22 marca 2011

Być częścią sukcesu? Opera Mobile 11 dla Androida!

Podobno każdy programista oprócz zdolności koderskich powinien także posiadać trochę zdolności marketingowych, by ostatecznie, to co zostało przez niego stworzone, mogło "zostać docenione przez lud".

Zatem... ten post to nie jest jakaś cicha autopromocja, to nie jest nawet kryptoreklama, to jest moje jawne szkolenie się w tej dziedzinie i jawna głośna reklama tego, w czego produkcji maczałem palce :)

Dlatego niniejszym chciałbym Wam przedstawić produkt nad którym pracował zespół, którego mam przyjemność być członkiem, produkt, który zostawia konkurencje daleko w tyle, produkt który sprawia, że używanie Internetu w urządzeniach mobilnych staje się czystą przyjemnością, produkt dla najdynamiczniej rozwijającego się systemu dla urządzeń mobilnych - Androida, produkt o nazwie:

Opera Mobile 11


Czy spodziewany przeze mnie sukces naprawdę okażę się sukcesem? To okazuje się dosłownie teraz, gdy stworzony przez nas program trafia w ręce milionów użytkowników. O 5:00 naszego czasu, drugiego dnia wiosny Opera Mobile 11 trafiła do Android Market.

Jeżeli chodzi o mnie to pierwszy raz mam okazję pracować w zespole wypuszczającym produkt na tak szeroki rynek globalny. Dotychczas były to mniejsze projekty, przeznaczone głównie dla danego kraju czy też konkretnego operatora komórkowego.

Dosyć jednak o mnie! Dzisiaj bohaterem jest cudowna, niesamowita i pachnąca świeżością Opera Mobile 11 :)


Chciałbym jednak podkreślić, że dzisiaj Opera wydała nowe wersje produktów Mini i Mobile na niemalże wszystkie mobilne platformy! Ten wpis jednak poświęcę specjalnie Operze Mobile dla Androida, która jest w pełni funkcjonalną przeglądarką na urządzenia mobilne.

a co w niej mamy najlepszego?

17 marca 2011

Show git branches by date

Zapragnąłem mieć taką funkcjonalność, git jednak takiej nie dostarcza.

Poszukałem i okazało się, że ponownie commandlinefu proponuje całkiem niezłe rozwiązanie, dające w efekcie:


12 marca 2011

"Kazdy kiedyś zaczynał" - symulator losowania lotto

Pierwszy wpis z serii "każdy kiedyś zaczynał" o której pisałem ostatnio, zostanie poświęcony na omówienie krótkiego programiku, który miał symulować maszynę losującą Dużego Lotka. Postaram się w nim wytknąć SOBIE wszystkie błędy jakie popełniłem w niedzielę, 15 lutego 2004 roku o godzinie 15:16, uznając ten program za skończony (data ostatniej modyfikacji pliku ;) )

Kod źródłowy owego programu przedstawia się jak niżej. Chciałbym zaznaczyć, że jest to oryginalny kod, niemodyfikowany na potrzeby tego wpisu.

#include<iostream.h>
#include<conio.h>
#include<stdlib.h>

int i,j,tab[6],k=0,il;
void main()
{
clrscr();
cout<<"To jest program nasladujacy losowania Duzego Lotka.\n";
cout<<"Jaka liczbe losowan wykonac: ";
cin>>il;
randomize();
do{
i=0;
do{
tab[i]=random(50);j=0;
  while(j!=i||tab[i]==0)
  {if(tab[i]==tab[j]||tab[i]==0)
       {i--;j=i-1;}
       j++;
  }
  i++;
  }
while(i!=6);
i=0;
cout<<" Losowanie nr "<<k+1<<":";
do{
cout<<"\t\b\b"<<tab[i]<<",";
  i++;
  }
while (i!=6);
cout<<endl;
k++;}
while (k!=il);
getch();
}

Jeżeli chciałbyś nauczyć się czegoś z tego wpisu, to prosiłbym Cię teraz, byś przed przeczytaniem dalszej części posta zastanowił się chwilę i sam się postarał wyłapać wszystkie błędy merytoryczne, składniowe i logiczne.

2 marca 2011

"Każdy kiedyś zaczynał" - czyli jak nie programować w C++

Nikt nie urodził się programistą. Każdy z nas stawiał kiedyś swoje pierwsze kroki w dziedzinie programowania. Każdy kiedyś zmagał się z dziwaczną wówczas dla niego składnią i jeszcze dziwniejszymi nazwami funkcji. Jednak niektórzy z nas pomimo licznych niepowodzeń przebrnęli przez ten najśmieszniejszy etap swojego programistycznego rozwoju. A komedia to była iście w stylu Monty Pythona... czasami nie wiadomo było czy się śmiać, czy płakać.

Programować chciałem zawsze... lecz ubzdurałem sobie, że to jakaś czarna magia, która jest nie do ogarnięcia. Jestem zawodowym programistą, więc chyba coś tam w końcu opanowałem. Jednak gdy teraz patrzę na to co pisałem 7 lat temu, pewien jestem, że jednak jakaś magia mi wówczas pomagała, bo spoglądam na swój kod i zadaje sobie pytanie: "jak kod wyglądający w ten sposób mógł w ogóle się uruchamiać"?

Wszystkie moje pierwsze programy były dla mnie bardzo cenne. Pamiętam, jak kiedyś w pewnym momencie podjąłem decyzję, by postarać się zachować wszystkie listingi na zawsze, by później móc się z nich śmiać... i oto chciałbym ogłosić, że nadeszły czasy w których chętnie pośmieję się z nich razem z wami :)


Lata 2003 i 2004 były to dla mnie czasy spędzone z kompilatorem firmy Borland w wersji 3.1. Sam kompilator pochodził z 1992 roku, więc z czasów wręcz zamierzchłych, jednak taki kompilator dostałem od swojego nauczyciela, na takim się uczyłem (aż się łezka w oku kręci...).

Kodów źródłowych z tamtych czasów pozostało mi kilkadziesiąt, z czego co najmniej kilkanaście potrafię teraz odczytać i zinterpretować to, co przecież kiedyś wydawało się dla mnie "takie jasne"... :)

W najbliższym czasie, okresowo będę starał się publikować omówienia owych tych "moich starych dziejów", analizując swoje ówczesne programy, zastanawiając się dlaczego wówczas właśnie tak a nie inaczej to napisałem. Sądzę, że z takiego omówienia mogą skorzystać wszystkie osoby, które same mają nadal styczność z początkującymi adeptami sztuki programowania.


Jednocześnie chciałbym was już teraz zachęcić do subskrypcji kanału RSS, gdyż gwarantuje Wam, że wówczas nie minie Was doskonała okazja by podbudować mniemanie o swoich programistycznych zdolnościach patrząc m.in. na taki kod: