Na pewno słuszna jest rada, żeby nie dobierać stacku przed rozpoczęciem projektu, aczkolwiek to podejście jest usprawiedliwiony. To sposób uczenia i kształt rynku prowadzi do takich zachowań. Trochę wyrozumiałości. Ile każdemu wyjadaczowi zajęło do tej podstawowej prawdy, że język i biblioteki dobiera się pod projekt, a nie na odwrót? Ile języków trzeba poznać, żeby zrozumieć, że to nie jest tak, że jeden jest lepszy, a drugi gorszy tylko, że każdy ma swoje cechy, które czynią go bardziej użytecznym w konkretnym zadaniu.
To teraz do rzeczy, widzę, że celujesz w aplikację webową. Mam dla ciebie pomysł, który może pomóc wielu nerdom, a może nie tylko nerdom i jeśli zrobicie to dobrze nawet mogę być pierwszym klientem. Mianowicie chodzi o sprawę designu w sieci. Oczywiście są ładnie złożone strony, które się świetnie czyta, ale większość to jest totalna padaka. Jeden nawet się nie zastanowi nad tym, może nie zauważy, ale dla wielu (łącznie ze mną) to jest kwestia czytać albo nie czytać. Dlatego powstają wtyczki dla przeglądarek, ale jakoś rewolucji jak nie było tak nie ma (albo są kijowe, albo nie radzą sobie z niektórymi stronami). Dla swoich potrzeb mam rozwiązanie klasy duct tape:
#!/bin/sh
# download page and make it more readable
url="$1"
name="$2.html"
if [[ -z "$1" ]]; then
echo "Usage: readabilize url [name]"
echo
echo "downloads site from url to READABILIZE_DIR and"
echo "inject readabilize.css to it's code. File can"
echo "be found with used font in extas/readabilize."
echo "It (or your version) should be placed in READABILIZE_DIR"
echo "If given name, file will be stored ass \$name.html"
echo "In the end page is run in browser of choice"
fi
if [[ -z "$READABILIZE_DIR" ]] || [[ -z "$BROWSER" ]]; then
echo "please make sure that following evironment values are set
READABILIZE_DIR – directory where documents are downloaded to
and where style data is stored.
BROWSER – command used to run web browser"
exit 1
fi
if [[ -z "$2" ]]; then
name=$(echo $url | sed 's#^.*/##')
fi
head_regx='</head'
css_include='<link rel="stylesheet" type="text/css" href="readabilize.css">'
curl "$1" \
| sed -e 's#<link[^>]+rel="stylesheet"[^>]\+>##' \
-e "s#$head_regx#$css_include$head_regx#" \
> "$READABILIZE_DIR/$name"
$BROWSER "$READABILIZE_DIR/$name" &
jest ono wysoce niedoskonałe, ale robi robotę: mogę poczytać stronę w idealnej kolumnie tekstu o szerokości 60 znaków, z ulubioną czcionką w jasnym kolorze na ciemnym tle, itd, a przy okazji automatycznie ściągają mi się ciekawe teksty na później. Gdyby rozwinąć koncepcję, żęby poradziło sobie to z każdą stroną, radziło sobie z obrazkami, które zwykle mają adresy relatywne (tak wiem, wget jest lepszy do tego, ale jeszcze nie chciało mi się tego poprawić). A gdyby udało wam się zrobić, żeby dało się oglądać w taki sposób dynamiczne strony to już w ogóle bajer. A to może być dopiero początek ;)
Tylko obawiam się, że w postaci aplikacji webowej byłoby to legalne. W zasadzie nie wiem na ile w ogóle jest to legalne.;p