Desktop apps comeback

Eddig is zavart, hogy olyan funkciókat amik egyszerűen, és jól megoldhatók lokális alkalmazásokkal, iszonyú munka és erőforrás árán web alapú “alkalmazássá” alakítanak. Tegnap végül elegem lett, és úgy döntöttem, hogy a napi munkavégzés során kerülöm a web alapú alkalmazásokat. Lassúak, iszonyú erőforrást használnak, és a helyzet az idő múlásával (az alkalmazások komplexitásának növekedésével) egyre rosszabb, amit jól szemléltet az alábbi ábra:

330 mb csak a Google Inbox, hozzá jön még a böngésző 400 mb-ja, így 700 mega memória szükséges ahhoz, hogy el tudjam olvasni a leveleim (egy részét). Tegyük hozzá, hogy egy levél megnyitása másodpercekig tart, és néha már a sima szövegbevitel is akadozik…

A fentiek ellenére van létjogosultsága, hogy megnézzem a leveleimet egy böngészőben, de nem akkor, ha az elkövetkező 8 órában arra készülök, hogy levelekkel dolgozzak.

Az elmúlt időben annyira megszerette mindenki ezeket a csodálatos webalkalmazásokat, hogy már nem is nagyon gondolkoznak másban. Nekem volt pár ötletem, de mielőtt teszteltem volna, kerestem cikkeket, hogy miért jobb az asztali (nem a web alapú) Microsoft Office Outlook-ot használni, mint a gmail-t böngészőben, de mindenki csak a web-es platformokat hasonlítgatta, fel sem merült bennük egy ilyen jellegű összehasonlítás.

Gondoltam amiről nem írnak az emberek, az csak jó lehet, így belevágtam a dologba. Az átállás első (és legegyszerűbb) lépése a levelezés kiváltása. Szerencsére ott az IMAP protokoll, engedélyezni kell, és meg is történik a csoda. Persze erre azért várni kell, mert a levelek letöltése / indexelése nem egy gyors dolog. Ezen sokat segíthet, ha bizonyos könyvtárakat (pl. Important items) nem is szinkronizálunk, míg más könyvtárakban (Spam) csak a levelek fejléceit töltjük le. Az eredmény magáért beszél, az Outlook 150 Mb memóriát használ, mindkét levelezésemmel, szemben a webmail 1.1 Gb-os memória használatával. UI reszponzivitás terén pedig nem is kérdés, hogy az outlook jobb (letöltött levelekből dolgozik, native ui, stb.).

A gmail webapp elhagyásával viszont megszűnik még pár dolog, mint pl. a hangouts, amit ki lehet váltani honlappal (hangouts.google.com) és elbúcsúzhatunk újabb 200 mb memóriától, esetleg a yakyak alkalmazással ami elektron alapú (így csak 180mb memóriát használ, de cserébe nem kezel több accountot…), és a jó öreg pidgin-el. Ez utóbbi előnye, hogy a facebook chat-et is bele lehet kötni, szóval az összes IM üzenet egy helyen kezelhető. Hangouts és facebook használatához szükséges az alábbi két extra plugin, de utána gond nélkül működik minden:

Ezek után mindhárom IM kliens együttesen fogyaszt 38 Mb memóriát, viszont ennyiből gyorsabban és jobban működnek…

A google drive-ra szerencsére már régóta van megoldás, a Drive File System, ez nem újdonság, eddig is ezt használtam, mert a web alapú fájlkezelés pokol.

Elvesztek még a már ismert contactok, de azokat be lehet szinkronizálni a GO Contacts Sync Mod-al. Mivel nem gyakran változnak, ezért ki is kapcsoltam az automatikus szinkronizálást.

Egyedül a naptár kezelésére nem találtam korrekt offline megoldást, abból maradt az online verzió, és a -180 Mb memória…

Alternatívaként még felmerülhet pár dolog az outlook helyett, ilyen pl. az eM Client ami kezeli a google contact-okat és a calendar-t is alapból, viszont az Outlookkal ellentétben nem tölti le a leveleket, így a használat során várni kell a levelek megnyitására. Ezzel meg lehet spórolni a memória használatot és a gui is gyorsabb mint a web alapú negoldás, de összességében a leveleket előre letöltő kliensek gyorsabbak. Nyílt forrású alternatíva még a Thunderbird, amit régebben használtam (pont az outlook után) de már nem volt energiám újra előszedni.

 

Hibabejelentés

Előző héten eltűnt az internet, és a magam visszafogott módján próbáltam jelezni a szolgáltatónak, hogy nem annyira jófejség családokat a digitális őskorba száműzni…

Sajnos nem jártam sikerrel (legalábbis 3 nap múlva még mindig nem volt net), ezért úgy gondoltam ideje szakember segítségét kérni. Baráti segítséggel (köszi Attis!) megtaláltam az ide vonatkozó hanganyagot. Mivel hosszas gyakorlás után sem tudtam megközelíteni a mester teljesítményét, ezért inkább megvágtam az anyagot, későbbi felhasználásra.

Szóval ha elmenne az internet, akkor hangfal felhangosít, háttérzaj leszáll, és indulhat is a panaszbejelentési folyamat, az alábbi mankókkal.

Nem akarsz elmenni a picsaba

Szar az adsl te meg ott vakarozol

Mit csinalsz ott

Nem lenne szar az adsl ha dolgoznal

Picsaba bazd meg

Szar az adsl erted es vakaroztok ottan

Mit kepzeltek

Vakarozol es szar az adsl nem tudunk netezni

Itt van az egesz csaladom es nem tud senki netezni

Nem megy erted, javitsd meg bazdmeg

Itt van ez a szar, ra van irva, hogy ize

Mondom, hogy vakarozol bazdmeg

Mozgas, nem erek ra bazdmeg

Meg ma bazdmeg, mintha elnel

Nem sertegetlek, de faszom tele, hogy nem megy az internet

 

Ha épp megy az internet, és csak amolyan munka utáni felüdülésként szeretnéd magadba szívni a hatékony panaszbejelentés rejtelmeit, akkor rakd be alá Ellen Allien – Jack My Ass c. számát, és nyomogasd random a play gombot… 🙂

 

Ui: amire elkészültem a wav-okkal, addigra érkeztek meg a levelek a szerveremtől, hogy dolgokat nem tudott elintézni, de most már minden ok… Így élesben nem tudtam tesztelni a dolgot, de ami késik, nem múlik 🙂

Man MySql

Úgy hozta a sors, hogy a docker miatt volt szerencsém újraélni a mysql-es kalandjaimat. Egy két hasznos utasítás mysql adminisztrálásához:

man mysql

 

Hallod a különbséget?

Egy teszt, hogy tényleg számít e a hangminőség, vagy sem…

http://www.npr.org/sections/therecord/2015/06/02/411473508/how-well-can-you-hear-audio-quality

Eredmény:

  • Laptopon integrált hangkártyával, és fülhallgatóval a 320kbps és uncompressed között nem tudtam különbséget tenni, a 128kbps viszont hallható (többszöri teszt után sem választottam soha)
  • Rendes hangkártyával, és stúdió monitorokkal az eredményt még nem tudom, meg kell várni, amíg megépül hozzá az új stúdió… 🙂

Intel processzorok rejtett beállításai

Az utóbbi időben a processzorok órajele mellett azok energia gazdálkodási funkcióit is jelentősen fejlesztették, ami elég hasznos egy laptop esetén, és nem mindig hasznos pl. valós idejű használat során egy asztali gépben.

Akit nem érdekel a fogyasztás, ellenben konstans performanciát szeretne elérni, érdemes lehet módosítani az alapértelmezett energiagazdálkodási beállításokat (power options).

Ehhez egy jó kiindulási alapot nyújthat az alábbi cikk:

http://www.dozty.com/how-to-unlock-the-hidden-features-of-processor-power-management/

Különbség

Magyar webshop: 4500 HUF + postaköltség

ebay: 735 HUF + ingyen szállítás

Windows boot time

Az újabb Windows verziók kapcsán – kivéve Windows 10 – a Microsoft kiemelt figyelmet fordított az operációs rendszer teljesítménye. Az ez irányú törekvések emlékét őrzik az egyre jobb performancia elemző eszközök, mint pl. a Task Manager (és az onnan elérhető Resource Monitor). Bár ezek továbbra sem váltják ki a jó öreg Process Explorer, Process Monitor-t, de az esetek egy részében a problémák már detektálhatók natív windows-os eszközökkel (is).

A szuper optimalizált windows-om a napokban ismét lehetőséget biztosított, hogy foglalkozzak vele kicsit, mert login előtt megállt, és várt vagy 20 másodpercet, ezután dobott a login képernyőre. Mivel itt még boot fázisról beszélünk, sajnos a fenti eszközök egyike sem használható. Első körben megnéztem az event log-ot, hátha találok benne valami érdekeset (ahogy a mondás tartja, aki keres az talál), de ennek a várakozáshoz sajnos nem volt köze.

Egyéb okokból már telepítve volt a gépen a Windows Assessment and Deployment Kit (Windows ADK) Windows Performance Analyzer komponense, ami lehetőséget biztosít trace-k készítésére, azok elemzésére, akár boot idő alatt is.

A használatához rá kell venni a windows-t, hogy trace fájlt generáljon, melyből majd kideríthetjük, hogy mi is történik a vizsgált időszakban. Régen ehhez pár száz karakterből álló parancssort kellett készíteni (xbootmgr…), de a Microsoftnál is sejthették, hogy ez ebben a formában nem valami jó, és egy szorgalmas fejlesztőnek hála ma már ezt konfigurálhatjuk grafikus felületen is (na jó a felület képességeit nem vitték túlzásba, de hát ki a kicsit nem becsüli…).


wprui.exe

Az ily módon megkeletkezett fájlt (pl.: boot_1.etl) a Windows Performance Analyzer-rel tudjuk alaposabban megvizsgálni. Mivel az én problémám a boot alatt jelentkezett, de még login előtt, az első nézet amit bekapcsoltam a Boot Phases volt. Itt már látszott, hogy a bejelentkezés előtt a Winlogon init 31 másodpercig tartott, ami gombócból is sok, nem hogy boot időből…

A fenti nézethez hozzádobtam még a Processes nézetet, hogy látszódjon milyen alkalmazások indultak el ezen idő alatt.

 

A processeket vizsgálgatva feltűnt egy alkalmazás ami a login inittel indult, és 29.9 másodpercig futott… Ez az alkalmazás pedig nem volt más, mint az OriginWebHelperService.exe…

Ezután eszembe jutott, hogy nemrég elindítottam az Origin-t, és frissítette magát… A process egyébként service-ként települt, a frissítés rakta fel/kapcsolta be, ott kellett kikapcsolni, és a probléma megszűnt… Ezúton is köszönöm az EA-nak a fejtörőt, szórakoztatóbb volt, mint a legtöbb mostani játékuk 😉

 

Google spreadsheet duplikált sorok

Táblák kezelése kapcsán előfordul néha, hogy bizonyos dupla előfordulásokat szeretnénk megjelölni/kitörölni. Ezt a Google spreadsheet-ek esetén script segítségével tehetjük meg.

Az alábbi script pirossal jelöli azon sor előfordulásokat, ami a táblázatban már egyszer szerepelt:


function markDuplicates() {
   var sheet = SpreadsheetApp.getActiveSheet();
   var range = sheet.getDataRange();
   var newData = new Array();
   for(var i = range.getRow(); i < range.getLastRow(); i++){
      var row = range.offset(i, 0, 1);
      var rowData = row.getValues();
      for(j in newData){
         if(rowData.join() == newData[j].join()){
            row.setBackgroundRGB(255, 0, 0);
         }
      }
      newData.push(rowData);
   }
}

A kód készítése során az alábbi források segítettek:

Tutorial: Removing Duplicate Rows in a Spreadsheet

Google Spreadsheet: Script to Change Row Color when a cell changes text