Skip to content

Instantly share code, notes, and snippets.

View cagatay-y's full-sized avatar

Çağatay Yiğit Şahin cagatay-y

View GitHub Profile

Developers have the right to complain about third-party packages (and that is not the end of software freedom)

People take pride in their work and are attached to it emotionally. As far as my basic understanding goes, this was pointed out by Karl Marx (among other things) in his theory of alienation way back in the 19th century. I think most people have experienced this feeling in their lives too. In FOSS, the emotional connection is even more important, as most of the time there is no other benefit to the contributor than that pride.

If the person thinks that the product of their hard work is made worse by a third party, they will be upset. If I was a chef and the waiter messed up the plating I meticulously did, I would not like that. If I pulled a espresso shot, paying attention to all the variables, selecting the most delicious beans and it was turned into an ice coffee mixed with two table spoons of sugar and filled to the brim with heavy cream; I would be upset.

All things aside, people have right to

@cagatay-y
cagatay-y / flatpak_and_nix_guix.md
Last active December 24, 2019 23:58
Flatpak and Nix/Guix

When a Flatpak application is built, the build environment only has access the SDK and the SDK extensions, not to the host (I think you can technically give access to host but that would be wrong). Some of the SDKs are KDE, GNOME, Freedesktop and some extensions are Rust, C♯, Java. These provide the necessary stuff to build the application. For example, GNOME SDK has libraries and binaries common to GNOME applications. SDKs can build on each other, for example KDE and GNOME share Freedesktop SDK as their base. SDKs have versions and each application manifest declares the SDK and SDK version it needs. You don't have to declare the version but then it would default to master and that is only for development. SDKs can get updates but if a package declares GNOME 3.32 for its SDK, it will not update to 3.34 when it comes out, the updating is for bugfix kind of things. You can have multiple versions of the same SDK.

For other dependencies your application needs, you declare modules in the manifest. The sources to

@cagatay-y
cagatay-y / Geliştirilmiş.sb
Created October 20, 2017 18:21
Hedef kilo öneren yetişkin vücut kitle indeksi hesaplayıcı - 9 Kasım 2013
TextWindow.Title="Geliştirilmiş Yetişkin Vücut Kitle İndeksi"
TextWindow.Write("Kütleniz: ")
kutle=TextWindow.Read()
uzunluk:
TextWindow.Write("Uzunluğunuz: ")
uzunluk=TextWindow.Read()
If (uzunluk>2) Then
TextWindow.WriteLine("Metre cinsinden yazınız")
Goto uzunluk
EndIf
@cagatay-y
cagatay-y / Faiz Lobisi.sb
Created October 20, 2017 18:12
Faiz hesaplayıcı - 8 Mart 2014
TextWindow.Write("Anapara: ")
anapara=TextWindow.ReadNumber()
TextWindow.WriteLine("")
TextWindow.WriteLine("Yıl, ay ya da gün")
TextWindow.Write("Vade cinsi: ")
vade_cinsi=TextWindow.Read()
TextWindow.WriteLine("")
TextWindow.Write("Vade: ")
vade=TextWindow.ReadNumber()
TextWindow.WriteLine("")
@cagatay-y
cagatay-y / Yetişkin Vücut Kitle İndeksi.sb
Created October 20, 2017 18:04
Yetişkin vücut kitle indeksi hesaplayıcı - 7 Kasım 2013
TextWindow.Write("Kütleniz: ")
kutle=TextWindow.Read()
uzunluk:
TextWindow.Write("Uzunluğunuz: ")
uzunluk=TextWindow.Read()
If (uzunluk>2) Then
TextWindow.WriteLine("Metre cinsinden yazınız")
Goto uzunluk
Else
@cagatay-y
cagatay-y / scaryFridays.py
Created October 20, 2017 17:00
Get 'Friday the 13th's in a range
#05/13/2016
from datetime import date
def scaryFridays(start, end):
for i in range(start, end):
for j in range(1, 13):
theDay = date(i, j, 13)
if theDay.weekday() == 4:
yield theDay
scaryFridays(2000, 2020)
@cagatay-y
cagatay-y / one-eight.c
Created September 23, 2017 15:02
The C Programming Language Exercises
#include <stdio.h>
int main()
{
int nb;
char c;
for (c = getchar(); c != EOF; c = getchar())
if (c == ' ' || c == '\t' || c == '\n')
++nb;
printf("\n%d\n", nb);