GroupLayout, NetBeans a verze Javy

Vývojář je tvor, který by často nejraději používal poslední nástroje či frameworky a nejinak tomu bývá v souvislosti s novými verzemi Javy. Tento fakt však naráží na zavedené zvyklosti a v případě Javy nutnosti podpory starších verzí, které jsou stále hojně rozšířené. Dnes se mi v tomto ohledu povedl poměrně začátečnický kix. Na svém pracovním stroji jsem používal (nyní již skutečně používal) Javu 6.0 a ve vývojovém prostředí NetBeans 5.5.1 vytvářel grafické rozhraní v návrháři GUI. Byl jsem s výsledkem spokojen do té doby, dokud mi nepřišel e-mail o selhání kontinuálního buildu.
Pokračování textu GroupLayout, NetBeans a verze Javy

Důvěřovaný certifikát v Javě

Nedávno jsem narazil na problém, jak přidat do výchozího úložiště důvěřovaných certifikátů přidat vlastní certifikační autoritu.

Cesta k výchozímu úložišti je platná v Ubuntu a Debianu. V jiných systémech ji najdete v adresáři $JAVA_HOME/jre/lib/security/cacerts.

sudo keytool -import -noprompt -file /etc/ssl/certs/SoftEU-cacert.crt -trustcacerts 
 -keystore /etc/java-6-sun/security/cacerts -storepass changeit

Poznámka: changeit je výchozí heslo na tomto úložišti.

Ubuntu je někdy lepší než windows

Dnes jsem si přečetl rozhovor s Markem Shuttleworthem o Ubuntu. Zaujala mne obzvlášť jedna část:

Mark Shuttleworth: Well there are some places now, where Ubuntu is a better option than Windows. It’s not everywhere – not by any means – but there are some places. So for example we get a lot of reports now of developers who install computers for their parents and they put Ubuntu on them, because it’s not gonna get spyware, it’s not gonna get viruses, it’s very easy to maintain remotely and keep up-to-date. And so they are not getting constantly called by their parents saying their computer won’t work or „my ISP tells me that I got viruses on my computer“. It does everything they need, it does web and e-mail, office and spreadsheets and things like that. So in those cases Ubuntu is a very good option for everyday users. …

Celý rozhovor: Mark Shuttleworth: „Time for mass consumer sales of Linux on desktop has not yet come“

JoSQL – SQL for Java Objects

Už jste někdy psali komparátor, který vám umožní seřadit kolekci podle tří položek (např. podle příjmení, jména a rodného čísla)? To je vždy chvíle, kdy vzpomínám na SQL a závidím uživatelům .NET jejich LINQ.

Teď jsem ovšem objevil program JoSQL   SQL for Java Objects, který dělá přesně to samé. Nepoužívá k tomu ovšem změnu syntaxe jazyka jako C# (zaplaťpánbůh), ale přesto se s ním pracuje celkem příjemně.

Sestavíte JoSQL dotaz, přidáte kolekci objektů nad kterou chcete provádět operace a dostanete výsledek. Můžete použít přístup k proměnným (property) a vše je prováděno pomocí reflection API.

Query q = new Query ();
q.parse ("select * from Subject order by surname, firstname, birthNum");
QueryResults qr = q.execute (getAllPeople());

Podporuje distinct, order by, where, group by a další. Můžete také samozřejmě použít dotaz typu:

select * from Subject where postalAddress.city = 'Pilsen'
select distinct postalAddress.city from Subject

Myslím si, že se jedná o povedený nástroj pro chvíle, kdy není možné použít řazení v databázi (třeba proto, že data v databázi prostě nemáte). Pro příště už nebudu psát složitý komparátor pro řazení dle více položek, ale použiji JoSQL.

Běžná definice odhadu

Běžná definice odhadu je nejoptimističtější předpověď, která má nenulovou pravděpodobnost, že se splní“ … Přijetí této definice neodvolatelně vede k metodě odhadování, která by se dala nazvat
„Jaké-je-nejbližší-datum-pro-které-už-nemůžte-tvrdit-že-to-nestihnete“.

Tom DeMarco, rok 1982

🙂

URL Rewriter

Mnoho z vás jistě zná modul do apache mod_rewrite, který umožňuje pomocí regulárních výrazů transformovat URL.

Lze tak přepsat URL /index.jsf?typ=cla­nek&id=1 na krásnější /clanky/1/. Lze jej také použít pro přesměrování uživatele z již nepoužívané adresy (např. při restrukturalizaci stránek).

U webové aplikace by měli být URL dlouhodobě stabilní tak, aby odkazy na ně fungovaly i za 10 let. Proto je dobré o nich přemýšlet. Navrhnete si strukturu aplikace a k tomu odpovídající URL. Tato přepisování umožňují oddělit adresy od použité technologie (lze ji tedy později snáze vyměnit).
Pokračování textu URL Rewriter