Źródła klienta twitter poniżej. W zasadzie to tylko mała zmiana w stosunku do klienta Blip, bo różnią się formatem danych wejściowych (ale nadal to JSON) i nazwami pól (user_path -> from_user, body -> text). Tak jak wcześniej – kod nie jest optymalny. Mam tego świadomość, dlatego czekam na wszelkie uwagi.
W przypadku korzystania z tego wyszukiwania trzeba wiedzieć, że nie są dostępne wszystkie statusy, a jedynie te najnowsze. (więcej…)
Archiwum kategorii ‘Programowanie’
Klient twitter (C)
czwartek, 14 Październik 2010Klient Blip (Perl)
środa, 13 Październik 2010Po południu opublikowałem źródła klienta Blip w C, teraz odnalazłem kod w Perl (mniej funkcjonalny) i wklejam poniżej
#!/usr/bin/perl -w
use strict;
use WWW::Mechanize;
use JSON -support_by_pp;
my $tag = "perl";
my $limit = 3;
if (@ARGV) {
$tag = shift;
}
if (@ARGV) {
$limit = shift;
}
my $url = "http://blip.pl/tags/$tag?limit=$limit";
my $browser = WWW::Mechanize->new();
$browser->add_header('Accept' => 'application/json', 'X-Blip-api' => '0.02', 'X-Blip-Application' => 'Infowizja.pl');
$browser->get($url);
my $content = $browser->content();
my $json = new JSON;
my $json_text = $json->decode($content);
eval {
foreach my $tag(@{$json_text}) {
$tag->{user_path} =~ s/^.*\///g;
print "$tag->{created_at}\t$tag->{user_path}\t$tag->{body}\n";
}
};
Najlepiej uruchamiać ze zmienną środowiskową PERL_UNICODE=S (na terminalu wyświetlającym znaki w UTF-8).
Klient Blip (C)
środa, 13 Październik 2010
Wspominałem już, że nie jestem programistą? Dlatego proszę o wszelkie uwagi odnośnie poniższego kodu.
Jest to prosty klient Blip, który w zasadzie tylko pobiera statusy konkretnego użytkownika (^user) lub o konkretnym znaczniku (#tag). (więcej…)
Visual C#
wtorek, 31 Sierpień 2010Rafał Wileczek twierdzi (z przymrużeniem oka), że prawdziwy informatyk powinien co roku poznawać nowy język programowania (czytaj wstęp do Moving to Python). Jeśli tak, to ja przespałem kilka(naście) lat. Z kolei Szymon (jednostka programująca znajdująca się najbliżej mnie) powtarza, że dzisiejsze programowanie (czyt. zarabianie na programowaniu) to umiejętność znalezienia odpowiednich bibliotek i wykorzystania ich w swoim projekcie. W sumie to racja – po co odkrywać koło.
Nie jestem programistą. Owszem, czasem coś odziedziczę, czasem coś przeciążę, ale tylko jak muszę. Nie pokazuję nikomu swego kodu w obawie przed zgorszeniem odbiorcy znającego się na rzeczy, albo co gorsza – uczący się dopiero odbiorca może złapać złe wzorce!
Tak czy inaczej, na potrzeby chwili poznaję nowy język – C#. Podobno nie tak bardzo odległy od C++, ale zawsze to nowy. Same środowisko MS jest bardzo zbliżone do Visual C++ (choć czuć subtelną różnicę i jak wszystko co nowe zachwyca bardziej :>). Z kolei patrząc po mnogości przykładów w MSDN odnoszę wrażenie, że C++ pooowoli idzie w odstawkę (może się mylę, proszę o twarde dowody).
(więcej…)
Visual Studio 2010 gotowe
wtorek, 13 Kwiecień 2010
Ja już mam (Visual C++ 2010), a Ty?
Ograniczenia Visual C++ Express
wtorek, 5 Styczeń 2010
Byłem szczęśliwym posiadaczem Visual C++ 6.0. Szczęśliwym, z perspektywy czasu, bo nie musiałem kupować całego kombajnu (Studio), by programować w C++. Teraz samo C++ jest dostępne tylko w wersji Express, a ta ma swoje ograniczenia. Jednym – dość sporym, jest brak możliwości dodawania zasobów (rosource) i ich edycji. Czyli z tego środowiska nie wyklikamy dodatkowego okienka, ani nie wyedytujemy ikony programu. Przy większym stopniu skomplikowania programu niż ‘Hello world!’ to jest uciążliwe. Można poznać dogłębnie WinAPI i pisać ‘z palca’, ale z pomocą może przyjść nam ResEdit – darmowy edytor zasobów dla aplikacji pod Windows.
Pierwsza usługa w Visual C++
wtorek, 15 Grudzień 2009Napisałem pierwszą usługę w Visual C++ dla Windows (przy pomocy książki „Microsoft Visual C++ 2008. Tworzenie aplikacji dla Windows” autorstwa Rafała Wileczka). Nie taki diabeł straszny. W dodatku działa. Robi co ma robić i użytkownik nie zabije tego. Pokazałem klientowi, a on na to: „Liczyłem, że będzie jakieś ładniejsze, kolorowe, itp.”. No cóż… A ja się tak starałem.
Zobacz też: