Ասք կոճակների մասին

Մի քանի օր առաջ յղել էի Ռուբեներդի բլոգ, ամենամեծ ծիածանի մասին։ Բայց ես իր կայք չէի մտել, արդէն երկար ժամանակ ա, որ չէի մտել։

Ես իր գրառումները կարդում եմ RSS հոսքով, ապա իմ մօտ հրապարակել էի սեղմելով Share to MarsEdit կոճակը սեղմելով, որը մի անգամից հրապարակում է իմ WordPress֊ով աշխատող կայքում։

Ու հա, միշտ էլ տենց եմ օգտագործել համացանցը, եւ կարդալուց, եւ գրառելուց։ Բայց երբ բոտերիցս մէկը (ու խօսքը բնաւ ԱԲ֊ով աշխատող բոտերի մասին չի, քանի որ ես նորմալ մարդ եմ) գրառումը հրապարակել էր Տելեգրամ, մատս կպաւ ու բացեցի եւ իմ կայքը, եւ իր կայքը, ու տեսայ թէ ինչքան է դիզայնը փոխուել։

Ինձ շատ դուր եկաւ իր կայքի նոր կոճակները՝

այդ վերջին կոճակը (More Buttons) սեղմելով հնարաւոր է տեսնել աւելի շատ կոճակներ՝

ջահելները իհարկէ չեն յիշի, բայց ժամանակին ամբողջ համացանցը լցուած էր նման ճոկաճներով։ շատերը նաեւ յղում էին հետաքրքիր տեղեր։ ի դէպ՝ իմ կայքում էլ ՄԻ ՀԱՏ կայ, որը ես եմ սարքել, մօտ 10 տարի առաջ՝

antranigv@bsd:/usr/local/www/pingvinashen.am/htdocs % stat -x hacker.png
  File: "hacker.png"
  Size: 1367         FileType: Regular File
  Mode: (0644/-rw-r--r--)         Uid: (    0/    root)  Gid: (    0/   wheel)
Device: 1081463670,18446744073180938337   Inode: 391732    Links: 1
Access: Tue May  8 20:53:43 2018
Modify: Sat Apr 23 19:28:18 2016
Change: Tue May  8 20:53:43 2018
 Birth: Sat Apr 23 19:28:18 2016

հաւանաբար մի 5 տարի աւել էլ ապրել էր իմ նախկին սերվերի վրայ։

Ու մի անգամից գլխիս վրայ լոյս վարեց. իսկ ի՞նչ եթէ լինի մի հատ կայք որտեղ կարելի է հաւաքել նման կոճակներ։

Ուրախ֊ուրախ գրեցի Ռուբենին, թէ բա արի նման կայք սարքենք։

Մինչեւ նկատեցի, որ նման բան արդէն կայ՝ web.badges.world

ու անկեղծ ասած՝ շատ ուրախ եմ, որ նման բան կայ (։

Ասանկ բաներ…

Անդրանիկ Վարդանեան

13 Մայիսի, 2026

Երկու ամիս առաջ հետ անցայ Յունիքսական համակարգերի։ Իրականում շատ հաւէս ա աշխատել Լենովոյի ստեղնաշարով, Արչ Լինուքսով, լիքը տմուքսներով ու առհասարակ ազատ ծրագրակազմով — լափթոփի վրայ։

Խնդիրը նրանում ա, որ ես մակի վրայ մէկ ա աւելի արագ եմ աշխատում։ աւելի արագ եմ սքրինշոթ անում, աւելի արագ եմ բլոգում, աւելի արագ եմ խնդիր լուծում։

Չնայած նրան, որ Մակի հետ ահռելի շատ խնդիրներ ունեմ՝ նոր թողարկման վատ դիզայնը, նոր թողարկման սահմանափակումները, ծրագրակազմերի քիչ ազատ ԾԱ լինելը, բայց մէկ ա՝ աւելի արագ եմ աշխատում։

Իսկ ես մօտ 5 օր ծախսեցի, որ կարողանամ լաւ IRC կլիենտ կարգաւորել Լինուքսի վրայ, ու մէկ ա չկարողացայ։

ՄակՕՍ֊ի վրայ Textual֊ը շատ սիրուն ա, մակի վրայ ունեմ նաեւ MarsEdit, ունեմ շատ հաւէս share կոճակներ որոնք ինտեգրուած են համակարգի բոլոր մասերում։ ունեմ նաեւ Command/⌘ կոճակը, որը շատ լաւ ա մտածուած։

Բայց նաեւ ունեմ շատ ապուշ խնդիրներ՝ օրինակ հենց նոր որ ուզում էի դնել ⌘ յունիքոդը, իրան ման եմ եկել, չնայած նրան, որ մի ժամանակ առաջ իրան աւելացրել էի իմ «սիրած» յունիքոդերի մէջ։ բայց ահա խնդրեմ՝ կորաւ էնտեղից։

Մակի խնդիրները շատ ապուշ խնդիրներ են, բայց Լինուքսի (ու առհասարակ Յունիքս գրաֆիկական համակարգերը) շատ մնայուն են։ ո՞նց ապրեմ առանց IRC կլիենտ, ո՞նց ապրեմ առանց MarsEdit֊ի ալտերնատիւի, ո՞նց ապրեմ առանց նորմալ Mastodon֊ի կլիենտի։ ցուցակը ահագին երկար ա նման խնդիրների։

Հիմա, ստիպուած, հետս ամէն օր վերցնում եմ չորս հատ համակարգիչ՝ մէկ հատ MacBook Air, մէկ հատ Lenovo T480s որն աշխատում ա CachyOS֊ով, մէկ հատ MacBook Pro աշխատանքային համակարգիչ, մէկ հատ էլ Steam Deck.

ահագին նիհարել եմ, բայց մէջքս ցաւում ա։

Անդրանիկ Վարդանեան

24 Մարտի, 2026

պէտք է ասել՝ շատ յաճելի է հետ անցնել Յունիքսական համակարգերի համակարգչի եւ լափթոփի վրայ։

Ճիշտ է՝ մակՕՍ-ն էլ է յունիքս, ու շատ դէպքերում նոյնիսկ աւելի շատ յունիքս ա քան ասենք ոմն Լինուքս համակարգրե (ուբունտու, քեզ եմ նայում) բայց մի տեսակ հաւէս ա կրկին աշխատել KDE-ով, WindowMaker-ով, օգտագործել qtPass առանց խնդիրների, ունենալ նորմալ package manager։

Շատ խնդալու է սակայն, ու եթէ ինձ պատմէին սա մի տաս տարի առաջ չէի հաւատայ, որ Լինուքսի հետ անցնելու իմ գլխաւոր պատճառը կը լինի խաղեր խաղալը։

Մի քանի ամիս առաջ հաւաքեցի խաղեր խաղալու համակարգիչ՝ NVidia GPUով, եւ այլն։ ու ինձ ՕՀ էր պէտք, որ օգտագործեմ։ Դէ Վինդոզ հո չէի՞ դնելու։

Վերջում որոշեցի փորձել CachyOS, որը շատ աւելի լաւ էր քան սպասում էի։ նախ՝ հետը ZFS է գալիս, յետոյ էլ կարողանում եմ նորմալ bootloader-ներ օգտագործել ու ազատուել GRUB-ից։ այս դէպքում օգտագործեցի limine, բայց երեւի կուզէի անցնել ZFS Boot Manager-ին։

Էկսպերիմենտը էնքան լաւ անցաւ, որ վերջում որոշեցի իմ Lenovo ThinkPad T480s-ի վրայ էլ դնել CachyOS. դրա համար պէտք էր նախ փոխել մարտկոցը (done) ու քանի որ տանը ունեմ լաւ ցանց՝ փոխել Wi-Fi-ի չիպը (done).

Արդէն երկու շաբաթ Լինուքս օգտագործելուց յետոյ պէտք ա ասեմ՝ ահաւոր հաւէս ա ազատութիւնը բայց ահաւոր վատն ա ամէն ինչ ։Ճ such an amazing turn of events, yes?

նորայրը կասէր «դէ անդրանիկ դու ստրուկ ես որ մակՕՍ ես օգտագործում» բայց արի ու տես որ մակՕՍ-ում աւելի լաւ ա աշխատում spell checker-ը, աւելի լաւ ա աշխատում input-ների համակարգերը (այո, փորձել եմ եւ X11, եւ Wayland, երկուսն էլ վատն են), աւելի լաւ է աշխատում memory management-ը, աւելի յարմար է ունենալ global menu վերեւում, աւելի լաւ է ինտեգրուած ամբողջ համակարգը իրար հետ, քան ասենք Լինուքսի վրայ ունենալ KDE/Gnome/WindowMaker.

Էլ չասեմ, որ կան շատ բարձր որակի ծրագրեր մակՕՍ-ի վրայ, որը անհնար է գտնել յունիքսական համակարգերի համար։ օրինակ՝ MarsEdit, NetNewsWire եւ իհարկէ OmniFocus, որ առանց իրա չեմ կարող նոյնիսկ ապրել։

Միւս կողմից, պէտք ա ասել, որ մակՕՍ-ը էնքան վատ ուղղութեամբ ա գնում, որ կարող ա ուզած-չուզած հետ անցնեմ, մշտականապէս, Լինուքսի (կամ ինչու չէ նաեւ, FreeBSD desktopի)։

բայց մինչեւ էդ օրը գալը, պէտք է լաւացնել Լինուքսի ու այլ Յունիքսական համակարգերի առօրեայ օգտագործման վիճակները։

Հա, քանի յիշեցի՝ հաւանաբար լիքը սխալներ կան այս գրածիս մէջ, քանի որ ՕՀ-ի ծրագրերի մի մասը մի տեղից են կարդում ուղղագրիչի ֆայլերը, մնացածը՝ ուրիշ տեղից։ free software my ass, իմաստը որն ա էդքան ազատ լինելու եթէ իրար հետ չեն շփուելու։

ու իմ վրայ մի այլ տիպի ազդում ա յունիքսական համակարգերի վրայ գտնուող վատ հայկական ստեղնաշարերի վիճակը։ Կրկին պէտք է ծախսեմ մի քանի ժամ որ լաւ լեյաութ սարքեմ։ Նոյնիսկ Հայերէն գրամեքենայի լեյաութի վրայ պակաս բաներ կան։

Տեսնենք եթէ գոնէ մի տարի ձգելու եմ, թէ ոչ։

Անդրանիկ Վարդանեան

8 Սեպտեմբերի, 2025

Մի քանի օր առաջ տանը նոր դարակ ենք հաւաքել (ես ու Կօֆէն միասին, մուրճով խփում էինք, որ հաւաքուի, ու մուրճը իհարկէ վերցրել էինք հարեւանի մօտից), որի գլխաւոր նպատակն էր լինել դարակ տան սպասարկիչների համար։

Իհարկէ ստացուեց ոնց ուզում եմ, ու սիրուն տեղադրեցինք։ ահա նկար —

բայց ամենակարեւորն այն է, որ վերջապէս սվիչը՝ HPE OfficeConnect 1820֊ը, փոխել եմ Mikrotik CSS318–16G–2S+֊ով, որը ամբողջովին անձայն է։

էլ դզզզզզ ձայն չկայ տանը։

մնացած մանրամասները երեւի կը գրառեմ անգլերէն բլոգում։

ու տենց։ Կը ներէք որ, սերւիսները մօտ 12 ժամ անջատուած էին ։Ճ

Անդրանիկ Վարդանեան

16 Հունիսի, 2025

Մի քանի օր առաջ երբ որոշեցի BSides֊ի համար գրել events2ics ծրագիրը, հասկացայ որ մենք չունենք լոգ անելու գրադարան Օբերոնի համար։

Այդ պատճառով էլ գրեցի Logger գրադարանը։ մօտաւորապէս էս տեսքն ունի օգտագործելուց՝

MODULE LoggerTest;
  IMPORT Logger;
VAR log: Logger.Logger;
BEGIN
  log := Logger.New();

  log.SetLevel(Logger.DEBUG);
  log.Info("Program initialized");
  log.InfoInt("The answer to life, the universe, and everything: ", 42);

  log.SetPrefix("Web Server");
  log.Warn("Web Server is loading slowly");
  log.WarnInt("Current threads: ", 4)
END LoggerTest.

Բայց երբ վերջացրեցի Logger֊ը գրել, հասկացայ որ նաեւ չունենք Semantic Versioning֊ի գրադարան Օբերոնի համար։ Սա իրականում պէտք էր որ կարողանամ Վիշապ Օբերոնի գրադարանների համակարգը՝ Vipak֊ը աւելի լաւ օգտագործել։

Նաեւ գրեցի SemVer գրադարանը, որը այս պահին կարողանում ա միայն Parse անել, այսպէս՝

MODULE SemVerExample;
  IMPORT SemVer, Out;
VAR
  v: SemVer.Version;
  ok: BOOLEAN;
BEGIN
  SemVer.Parse("1.2.3-alpha.1+build.5", v, ok);
  IF ok THEN
    Out.String("major="); Out.Int(v.Major, 1); Out.String("; ");
    Out.String("minor="); Out.Int(v.Minor, 1); Out.String("; ");
    Out.String("patch="); Out.Int(v.Patch, 1); Out.String("; ");
    Out.String("preRelease="); Out.String(v.PreRelease); Out.String("; ");
    Out.String("build="); Out.String(v.Build); Out.String(";");
    Out.Ln;
  ELSE
    Out.String("Invalid version string."); Out.Ln;
  END;
END SemVerExample.
 $ voc ../src/SemVer.Mod -s SemVerExample.Mod -m 2>/dev/null && ./SemVerExample
../src/SemVer.Mod  Compiling SemVer.  New symbol file.  5302 chars.
SemVerExample.Mod  Compiling SemVerExample.  Main program.  1204 chars.
major=1; minor=2; patch=3; preRelease=alpha.1; build=build.5;

Բայց այլ բաներ էլ են պէտք, օրինակ Compare, Match, եւ այլն։ Մտածում եմ երեւի արժի Հաքերսփեյսի ժամանակ մարդիկ աշխատեն դրա վրայ, համ էլ լաւ ուսումնական մօտեցում կը լինի քանի որ հիմնականում ալգորիթմներ պէտք է գրել։

Էլ ի՞նչ գրադարան արժի գրել։

Անդրանիկ Վարդանեան

13 Հունիսի, 2025

Վաղը տեղի ա ունենալու BSides միջոցառումը։ ընթացքում հասկացայ, որ ելոյթները դրած են ուղղակի կայքում, ու ձեւ չկայ իմանալու թէ ով ինչ ա խօսալու ու երբ, առանց կայքը մտնելու։

Կարող եմ իհարկէ արագի մէջ սարքել Calendar event բայց դէ հիմա նստած գրում եմ CSV Event to iCal converter օգտագործելով Օբերոն։ Համ էլ ձեռքս միքիչ կը բացուի, վաղուց low-level չեմ արել։

Երեւի կը լինի շատ պարզ ֆորմատ, որը կը լինի ասենք 2025.bsides.am.csv ֆայլի մէջ՝

SUMMARY|START|END|LOCATION|DESCRIPTION
How to Open Source|2025-06-14-16-00|2025-06-14-16-35|ISTC, Alek Manukyan st, 1/7, Yerevan, Armenia|Speaker: Antranig Vartanian\nLanguage: Armenian

Լաւ, արդէն գիտեմ ինչ եմ ուզում անել, հիմա մնում ա հասկանալ՝ ոնց եմ անելու…

Անդրանիկ Վարդանեան

13 Հունիսի, 2025

ահագին տխուր ա, որ մարդ կարող ա մի քանի տարի ա ծրագրաւորում ա անում, բայց չգիտի Public-Private բանալիները ոնց են աշխատում։ Կամ ասենք չգիտեն IP֊ն ինչ ա։ չեմ ասում կրիպտոգրաֆիայի մասնագէտ լինի, կամ ցանցերի ադմինիստրատոր, բայց դէ գոնէ ամենապարզ բաներն էլի։

Անդրանիկ Վարդանեան

12 Հունիսի, 2025

Ասում են «քլաուդ օգտագործի», ասում են «դէ լաւ բան ա քլաուդը միշտ աշխատում ա»։

ահա, խնդրեմ, Գուգլի վիճակը հենց հիմա՝

Բայց իմ սպասարկիչն օկ ա։ Նորայրի սպասարկիչն օկ ա։ դրա համար ա ստեղծուած համացանցը, որ մի բան պայթելուց միւսը չպայթի։

Անդրանիկ Վարդանեան

12 Հունիսի, 2025

Մի քանի օր քնելու ժամը խառնելը ահագին վատ ա։ ասենք ուղեղս ուղղակի չի աշխատում։ ոնց որ SIGSTOP ստացած լինեմ։

Յոյս ունեմ այսօր էդ խնդիրը կուղղեմ, բայց այսօր նաեւ ունեմ սերվեր միգրացնելու, որը միշտ պէտք ա գիշերով անել։ երեւի արժի, ասենք ժամը 9ին քնել, 4֊ին արթնանալ ու անել։