Skip to content
Nov 12 10

Nie wyrzucajcie swoich Macbooków

by Tomek

Wszystko wskazuje na to, że apokalipsy nie będzie. Dużo zamieszania wywołało oświadczenie, że Java na Mac OS X jest "deprecated" obudziło lęki, że Javy na Jabłka już więcej nie będzie. Tymczasem, w wypowiedzi Steve'a między wierszami można było przeczytać, że może jest lepszy sposób wydawania Javy na OS X niż obecnie. Pojawiła się sugestia, że tą robotę weźmie na siebie Oracle, co nie jest takie oczywiste: wszyscy dostawcy systemów sami dbają o dostarczenie Javy (robi to IBM, robi to HP dla swojego Nonstop Kernel) Oracle dystrybuuje javę pod Solarisa (bo to ich system), Windows (bo odebrali Microsoftowi licencję) i Linuksa (bo nie ma komu tego robić). Do tego dojdzie wkrórce Mac OS X (bo Steve'owi się nie chciało). Ostatecznie developerzy pracujący na Makach wyjdą na tym lepiej: dostaniemy Javę 7 prosto od Oracle'a i punktualnie, Apple przekaże efekty swojej pracy do OpenJDK, a na dodatek Java 6 będzie cały czas dostępna na Snow Leoparda i Liona.

via Apple's PR

Oct 2 10

Ładowanie kontrolera widoku z XIB w Three20

by Tomek

Ten artykuł jest dostępny na razie tylko w języku angielskim.

Sep 21 10

UITableViewCell ładowane z XIBa w Three20

by Tomek

Ten post w pełnej wersji jest na razie dostępny tylko w wersji angielskiej.

W skrócie: aby skorzystać z Interface Buildera do projektowanie komórek UITableView w kodzie opartym na Three20, nie uniknie się drobnego hakowania. Na szczęście popełniłem forka na GitHubie, gdzie umieściłem moją drobną modyfikację - a właściwie to całkiem uzasadniony refactoring.

Szczegóły techniczne w angielskiej wersji artykułu.

read more...

Aug 26 10

Kolejny argument na rzecz Flasha wytrącony z ręki Adobe

by Tomek

MPEG LA, organizacja posiadająca prawa do formatu H.264, czyli kompresji plików wideo przyjętej m.in. w standardzie HTML5 ogłosiła, że nie będzie nigdy pobierać opłat licencyjnych, o ile prezentowane treści są bezpłatne dla odbiorcy. Oznacza to, że serwisy takie jak YouTube czy Vimeo mogą bez obaw wdrażać ten format, a producenci przeglądarek nie muszą się obawiać wejścia w niepewną technologię.

read more...

Aug 17 10

Tajny projekt ujawniony – kalkulator głębi ostrości dla iPhone

by Tomek

Phocus app screenshotMój debiut w App Store okazał się wyjątkowo bezbolesny. Aplikacja nie wzbudziła podejrzeń recenzentów i zostałem powiadomiony, że napisany przeze mnie prosty kalkulator do obliczania głębi ostrości (dla niewtajemniczonych - przydatne dla fotografów) jest gotowy do sprzedaży pod nazwą Phocus!. Traktuję ją raczej jako rozgrzewkęi możliwość zapoznania się z procedurą publikacji aplikacji, która trzeba przyznać, bywa miejscami zawiła. Teraz pozostaje tylko poprosić wszystkich fotografujących użytkowników iPhone'ów i iPodów Touch by pomogli mi zostać milionerem :-)

Zapraszam też na oficjalną stronę aplikacji.

iTunes link

Jul 13 10

Prosty silnik 3D na iPhone

by Tomek

Konkurencja dla komercyjnych silników to nie będzie, ale dla zabawy zakodowałem prosty silnik 3D oparty na technice raycastingu. Prawdziwe rozwiązania desktopowe według mnie niekoniecznie będą się dobrze odnajdywać na przenośnym urządzeniu jak iPhone, więc kto wie czy to nie będzie punkt wyjścia do czegoś interesującego.

Ta próba została zbudowana na dwuwymiarowym silniku Cocos2D, który wbrew pozorom pozwala na wprowadzenie trzeciego wymiaru (wyświetlanie w Cocos2D oparte jest na OpenGL ES), chociaż wymaga to pewnej gimnastyki. Postaram się opisać to w którymś z kolejnych postów.

iPhone raycasting engine

iPhone raycasting engine

Jun 4 10

Zmiana domyślnego portu aplikacji napisanej w Grails

by Tomek

By zmienić domyślny port na którym słucha listener HTTP w aplikacji grailsowej, wszędzie w sieci można się dowiedzieć o opcji w linii poleceń:

tomek@jabuszko:~$ grails run-app -Dgrails.server.port.http=9900

Mnie to się średnio podoba, linia poleceń robi się długawa, że nie wspomnę o utrudnieniach, gdy korzystamy z IDE. I zawsze trzeba o tym parametrze pamiętać.
A wystarczy wyedytować grails-app/conf/BuildConfig.groovy, dodać linijkę

grails.server.port.http = 9900

i gotowe!

May 23 10

Bardzo szybki kurs Mercurial

by Tomek

Nawet  w małych projekcikach, dłubanych w domu dla przyjemności, system kontroli wersji może okazać się wielce przydatny.
W poszukiwaniu kandydata na lekkie narzędzie do kontroli wersji domowego, prywatnego projektu postanowiłem dać szansę obiecującemu projektowi Mercurial.

Kontynuuj czytanie po angielsku.

read more...

Mar 30 10

Posługiwanie się iPhonem

by Tomek

Instrukcje obsługi czytać nie tylko należy, ale i warto. Wydrukowana drobnym maczkiem książeczka "Ważne informacje o produkcie", przedstawia katalog czynności, które są zabronione:

"Nie należy rzucać, rozbierać, otwierać, zgniatać, zginać, deformować, nakłuwać, skrobać, wkładać do kuchenki mikrofalowej, palić, malować, wkładać ciał obcych do wnętrzna iPhone'a"

Sposób sformułowania sugeruje że katalog jest zamknięty, więc od mojej kreatywności zależy co mogę zrobić z telefonem. Nie jest zabronione ubieranie (ale rozbieranie już tak - lepiej się zastanowić), lizanie, ani wkładanie do kuchenki gazowej (ja mam elektryczną z termoobirgiem).

Apple służy również dobrą radą kierowcom samochodów: gdy w trasie zadzwoni Twój iPhone, "poinformuj osobę, z którą rozmawiasz, że prowadzisz". Gdy już poinformujesz, możecie się zastanowić czy warto rozmawiać. Ale Apple ostrzega, że "prowadzenie w deszczu, deszczu ze śniegiem, przy oblodzeniu, we mgle i dużym ruchu może być niebezpieczne". Gdy jednak koniecznie musisz pogadać, zalecana jest asertywność: "nie angażuj się w stresujące lub nerwowe rozmowy, które mogą odwracać uwagę".

Z poważniejszych ciekawostek warto zwrócić uwagę, że we Francji i we Włoszech iPhone jest przeznaczony tylko do użytku wewnątrz pomieszczeń.

Również budząca emocje kwestia zmiany kolorów czujników wilgoci jest niejako wyjaśniona przez zakaz używania iPhone'a w deszczu, w pobliżu zbiorników wodnych ani w innych wilgotnych miejscach. A dopuszczalne temperatury pracy mieszczą się w zakresie 0-35 stopni, co zimą wymusza odpowiednio warstwowe ubieranie się: trzymając telefon w zewnętrznej kieszeni możemy narazić go na mróz, z kolei zbyt blisko ciała możemy osiągnąć temperaturę 37 stopni (zatem nie wolno chorować!), że nie wspomnę o nadmiernej wilgoci na skutek pocenia się (nie biegać na autobus, jechać następnym!).

Wszystko wskazuje na to, że życie z iPhonem może być uciążliwe, ale ostatecznie wyjdzie nam na zdrowie.

Oct 8 09

Zmiana odcienia paska nawigacji

by Tomek

Jak dostosować wygląd paska nawigacji (navigation bar) do reszty aplikacji? Istnieje możliwość zmiany odcienia kolorów tegoż paska. Jest to o tyle miłe ze strony UIKita, że wystarczy podać "główny kolor", a framework zajmie się dostosowaniem wszystkich kolorków.

W tym celu trzeba - najlepiej w metodzie viewDidLoad pierwszego kontrolera który jest wrzucany na stos nawigacji dopisać:

self.navigationController.navigationBar.tintColor = [UIColor redColor];

By paski nawigacji u góry ekranu stały się krwisto czerwone. Co ciekawe, wystarczy to zrobić w pierwszym kontrolerze, ustawienie nie zostanie nadpisane.

Tinted iPhone navigation bar

Tinted iPhone navigation bar