12. May 2013

How to fix broken style in Plone

Some Products for Plone are little bit broken and uninstallation procedure does not work very well. When you install and then uninstall crappy product you might end up with messed layout of Plone portal.

That’s the time to pay a visit to plone_css folder in ZMI.

Remove any reference to broken style (whole box with style has yellow color) and click Save to reset Plone CSS caching system.

6. October 2011

Debian – dpkg problem – tar exists on unknown argument —warning=no-timestamp

I was upgrading Linux Debian. Everything went ok until upgrade of dpkg.

After upgrading dpkg package I was not able to install anything, because of error with tar command.

Tar was complaining that –warning=no-timestamp is unkwnown parameter and program terminated with error.

So I made small trick. I renamed /bin/tar to /bin/tar.original:

mv /bin/tar /bin/tar.original

Then I wrote simple script into /bin/tar file:

#!/bin/bash

tar.original xf -

Add permission:

chmod a+x /bin/tar

The last step is reinstallation of broken packages:

apt-get install --reinstall dpkg
apt-get install --reinstall tar

7. September 2011

Debian – apt-get install perl problem

I wanted to install new package on Debian. But what a funny message:

E: Could not perform immediate configuration on 'perl-modules'. 
Please see man 5 apt.conf under APT::Immediate-Configure for details. (2)

How to solve it?

Type:

apt-get install perl -o APT::Immediate-Configure=0

27. August 2011

Try to create aux.h file on Windows 7

Try it :-)

I was playing with one package from Linux. I grab source code of package using Cygwin. This source code contained one funny file: aux.h.

Windows version of Vim refused to open this file with error message: Permission denied.

Even Notepad refused to open this file.

Finally Visual Studio gave me interesting hint about this aux.h file name:

 

I tried to zip this file by 7Zip and extract it back. Result was that 7Zip decompressed file as _aux.h.

Interesting issue. :-)

5. March 2011

IE 6 Countdown

IE 6 is one of the biggest blocker of innovation in web technologies. IE 6 is eating hours and hours of developer’s time.

Some goverments stubbornly require support of this “ancient” application.

Christian Heilmann has been talking about this problem for several years.

Usage of IE 6 is falling. 12% in February. You can watch the departure of IE 6 from computer stage at: ie6countdown.com

31. January 2011

Amazon S3 – Authenticating REST – bug in documentation

Document Amazon S3 – Authenticating REST says that you should generate authentication signature using following code:

"Authorization: AWS " + AWSAccessKeyId + ":"
   + base64(hmac-sha1(VERB + "\n"
   + CONTENT-MD5 + "\n"
   + CONTENT-TYPE + "\n"
   + DATE + "\n"
   + CanonicalizedAmzHeaders + "\n"
   + CanonicalizedResource))

In documentation you can find following instructions:
The string to be signed is formed by appending the REST verb, content-md5 value, content-type value, date value, canonicalized x-amz headers, and the resource; all separated by newlines.

I followed instructions, but server always responded in the same stubborn fashion:

Code: SignatureDoesNotMatch
Message: The request signature we calculated does not match the signature you provided. Check your key and signing method.

The problem was that my request didn’t contain any AmzHeader and therefore CanonicalizedAmzHeaders was empty string followed by new line. That’s wrong.

If CanonizalizedAmzHeaders is empty string then there MUST NOT be new line!

Correct string for signing in case when AmzHeader is empty:

"Authorization: AWS " + AWSAccessKeyId + ":"
   + base64(hmac-sha1(VERB + "\n"
   + CONTENT-MD5 + "\n"
   + CONTENT-TYPE + "\n"
   + DATE + "\n"
   + CanonicalizedResource))

26. January 2011

IntelliJ Idea – Windows – Git – The remote end hung up

I was trying to clone git repository. I had brand new Windows with Cygwin version of git. Intellij Idea displayed nice helpful error message:

fatal: The remote end hung up unexpectedly

I found article at grublesmurf.org that pointed me to solution.

Problem was that Cygwin was using directory c:\cygwin\home\georgik\.ssh, but Intellij Idea was trying to read c:\Users\georgik\.ssh. I moved .ssh directory to c:\Users\georgik and set HOME variable to %USERPROFILE%.It is also worthy to modify /etc/passwd in cygwin to match that directory.

6. October 2010

Singleton je antipattern

Medzi návrhové vzory sa priplietol aj jeden nepodarok, ktorému sa hovorí singleton.

Sám o sebe singleton nie je zlý. Zlé však je, že vývojári majú tendenciu skĺznuť k jeho abnormálnemu nadužívaniu. Keď to poviem inak: namiesto používania rozumu a dobrého dizajnu používajú singletony.

Singleton znižuje možnosti rozširovania a testovania aplikácie. Osobne by som ho označil skôr za antipttern, než pattern.

Ak sa začnú v projekte množiť singletoni geometrickou radou, tak máte problém. Dôsledky premrštenej singletonizácie vedú doslova do vývojárskeho pekla. Softvér môžete rovno zahodiť.

Typicky vývojár singletonom supluje neexistenciu globálneho stavu a nedostatok znalostí o iných možnostiach riešenia.

Takže prosím. Pozor na singletona, ak vám niekto povie, že je to skvelá vec, mala by sa vám v ušiach rozoznieť varovná siréna.

Existujú prípady, kedy má použitie singletona význam, ale aj vtedy je nutné postupovať opatrne.

30. September 2010

TEDx: Dan Meyer – výuka matematiky a fyziky inak

7 kilová bowlingová guľa sa pohybuje rýchlosťou 3 m/s. Aká je kinetická energia lopty?

Nuda, že? A zamysleli ste sa niekedy prečo je to nuda a ako by bolo možné z toho príkladu nudu odstrániť?

Drobná zmena formátu spraví veľký rozdiel.

Dan Meyer rozpráva, ako zrealizovať zmenu formátu zadania problémov.

V našich končinách je veľa šikovných učiteľov, ktorí dokázali posunúť koncept omnoho ďalej. Možno by bolo fajn, keby sa zúčastnili nejakého TeDx-u aj v našich končinách.

6. September 2010

Indikátory pre softvérové projekty

Softvéru je kopec. Niektorý softvér prežíva a je udržiavaný len vďaka enormnému úsiliu a stratách na budgetoch. Iný softvér proste frčí jedna radosť.

Ako je možné zistiť nakoľko riskantné budú práce na softvérovom projekte? Zostavil som sadu indikátorov, ktoré umožňujú veľmi rýchlo zhodnotiť projekt. Pokiaľ je väčšina nasledujúcich indikátorov pre projekt pozitívna, malo by sa vedenie projektu zamyslieť (ak už nie je neskoro).

Indikátor 1. Tím nepoužíva version control. Toto je dnes už fatálny indikátor. Pokiaľ zistíte, že version control nie je na mieste, utekajte preč! Tak rýchlo ako sa len dá!

Indikátor 2. Tím kopíruje binárky a libky s programom priamo do version control. Toto indikuje typický zlý návyk a lenivosť ľudí. Zbytočné megabajty vo version control spomaľujú prácu a checkout projektu môže trvať aj 20 minút (v lepšom prípade). Pri snahe o drobnú opravu v kóde sa jednoducho strávi niekoľko hodín len checkoutovaním.

Indikátor 3. Tím builduje aplikácie pomocou IDE a nevie aplikáciu zbuildovať bez IDE. Silne sa obmedzujú možnosti nasadenia projektu.

Indikátor 4. Návod na deployment začína slovami: Skopírujeme tieto Jary/libky/rožky do adresára. Indikuje nezvládnutý alebo neexistujúci deployment postup. To je veľmi nebezpečné, v prípade poškodenia produkčného servera bude nahodenie trvať veľmi dlho, ak bude vôbec možné. Taktiež pridanie nového člena do tímu je veľmi drahé a časovo náročné.

Rozumným riešením použitie nástroja na automatizáciu, ako je napríklad Maven.

Indikátor 5. Tím nemá Wiki. Toto je veľmi zle, pretože znalosti sa strácajú. Nový člen tímu jednoducho nemá odkiaľ čerpať informácie, prečo je daný kus softvéru riešený tak ako je.

Indikátor 6. Tím nepoužíva softvér, ktorý vyvíja.

Indikátor 7. Tím alebo manažment považuje písanie testov len stratu času. Veľmi nebezpečné. Nesťažujte sa potom na straty na budgetoch.

Indikátor 8. Pred releasom nie je spustený ani unit-test, ani integračný test. Testuje sa na používateľovi, ktorý s tým ale vopred nesúhlasil.

Indikátor 9. Kontinuálna integrácia je pre tím cudzie slovo.

Indikátor 10. Neporiadok na stoloch a pracovisku. Tento nesoftvérový indikátor môže až prekvapivo dobre kopírovať stav serverových aplikácií.

  • Babel fish

      Translate from:

      Translate to:

  • Where’s the fish?

  • Further info

  • Badges

  • Video channel

  • Learning

    Grow your brain.
  • Tags

  • Topics

  • May 2013
    M T W T F S S
    « Feb    
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
  • Comments