CRE146 JavaScript

JavaScript begleitet das Web nahezu von Anbeginn an und ist trotz gelegentlicher Anwendung ein ewiges Mauerblümchen geblieben. Mit der Einführung modernerer Browser und JavaScript-Laufzeitumgebungen und der zunehmenden Verlagerung von Intelligenz in den Client erlebt JavaScript eine Phase der Neuentdeckung.

Warum JavaScript eine hochmoderne Programmiersprache ist und warum sein Potential bisher nur im Ansatz ausgeschöpft wurde erläutert lasse ich mir von Malte Ubl in einer ausführlichen und umfangreichen neuen Ausgabe von Chaosradio Express erläutern: CRE146 JavaScript.

Dieser Beitrag wurde unter Chaosradio Express veröffentlicht. Setze ein Lesezeichen auf den Permalink.

49 Antworten auf CRE146 JavaScript

  1. Pingback: boeckmania webdesign & digital art // #boeckmania @ QNet

  2. Eike Herzbach sagt:

    Download 20 kB/s, das kanns’ doch nicht sein..

    Ich kann ja verstehen dass Tim wissen will, wie oft eine Sendung heruntergeladen wird. Das lässt sich doch aber auch erreichen, indem man ein offizielles .torrent auf der Website anbietet und das dann zählt. Bandbreite für’s (legale) seeden ist in der CR/CRE Hörergemeinde bestimmt genug vorhanden, ich selbst könnte ein paar TB über einen 1 GBit/s Uplink anbieten.

    HTTP Downloads von einem Server sind einfach nicht mehr zeitgemäß und skalieren nicht – im Gegensatz dazu BitTorrent: je populärer ein Torrent, desto schneller kommt man dran.

  3. benn0 sagt:

    I’ll second that: Tim, bitte mach’ diesbezüglich was!

  4. mino sagt:

    Megaa… Ultra… Uber TIM

    Da haut der Tim einen Podcast nach dem anderen raus. Ich hoffe das du auch noch Zeit für deine Family findest.

    Ansonsten weitermachen und was ich noch wissen wollte, wird es nicht langsam wieder Zeit für eine neue Bahncard? :) Eine Spende von mir hättest du sicher.

  5. j sagt:

    Ui, das kommt ja unverhofft gerade recht. Dann mal warten. Das mit der Geschwindigkeit finde ich echt kein Problem, auch wenn sich ständig Leute darüber beschweren. 20kB/s? Die Leute von heute kennen nicht die Geschwindigkeiten von damals.

  6. anonymous coward sagt:

    seit wann ist heruntergeladenes torrent file gleich (erfolgreich) heruntergeladenem podcast?

    ausserdem, wie zeitnah brauchst du den podcast wirklich?

  7. Thomas sagt:

    Alle, die JavaScript in Ihre C-Anwendungen einbetten wollen, sollten sich mal mein Programm ‘jsapigen’ ansehen. Es ist ein Code-Generator, welcher die Bindings zwischen Binary und JavaScript-Umgebung erstellt. Statt 50 Zeilen Binding-Code in C schreibt man dann nur noch eine Zeile in einer IDL. Das Programm läuft auf allen üblichen Plattformen.

    http://jsapigen.sourceforge.net/

    MfG
    Thomas

    PS: Danke Tim für die tollen Sendungen. CRE ist echt Gold wert.

  8. Proto-Typ sagt:

    Super, eine JavaScript-Sendung habe ich mir schon länger insgeheim gewünscht!

    Da JQuery Dokument-Manipulation so einfach macht, sollten sich dann nicht die Browserhersteller mal zusammensetzen und einfach JQuery als den Standard definieren, in alle Browser einbauen und DOM entfernen oder wenigstens deprecaten? Das wäre ein weiterer insgeheimer Wunsch von mir.

    Schade auch, dass viele Leute JavaScript nur von 90er-Jahre-Ressourcen wie SelfHTML lernen/kennen, die auf die eigentlich zentralen Sprachelemente, welche JavaScript überhaupt erst ausmachen (Prototypal Inheritance, Objekt-Literale/JSON und First-Class-Functions/Closures), gar nicht eingehen und auch noch DOM lehren. Dementsprechend viel schlechtes JavaScript gibt es da draußen in der Welt. Douglas Crockford hat wirklich wichtige Arbeit damit geleistet JavaScript neu zu entdecken und seine Erkenntnisse zu verbreiten.

    Lustig fand ich den Ausspruch “die breite Klasse der Programmierer-Mittelschicht mitnehmen”. Eine erste Reaktion auf JavaScript von Entwicklern, die bisher nur Java und Co. kennen ist häufig “Wo ist denn hier das ‘class’-Keyword?”. Es ist tatsächlich wichtig zu verstehen, dass JavaScript nicht auf die klassische Klassen-Objektorientierung festgenagelt ist, sondern diese nur eine Option von vielen ist mit JavaScript konkret Objektorientierung zu betreiben, da Prototypen-OO ein Superset der Klassen-OO ist, wie in der Sendung auch gesagt.

    Wenn es nicht ums Web geht favorisiere ich aber Lua. Das ist recht ähnlich zu JavaScript (prototypbasiert, dynamisch, funktional, schlank, schnell, embeddable, ohne Standardlibrary-Vorgabe), nur ohne “Bad Parts” und mit schönerer Syntax (nicht C-basiert).

  9. Proto-Typ sagt:

    Übrigens gewinnt JavaScript auch bei klassischen Desktop-Anwendungen zunehmend Bedeutung (zumindest unter den Unix/Linux-Desktops wie GNOME und KDE).

    Beispielsweise lassen sich mit Seed [1] ganz normale, vollwertige Gnome/GTK-Anwendungen in JavaScript entwickeln, ganz ohne Browser. Seed benutzt die GLib als Standard-Library (für Dateizugriff etc.) und GObjectIntrospection um GObjects automatisch zu JavaScript-Objekten zu binden. So wird beispielsweise der GNOME-3-Desktop (“Gnome Shell”) in JavaScript mit Clutter (auch eine GObject-Library [2]) entwickelt.

    Auch unter KDE werden viele Plasmoids mit JavaScript/QtScript entwickelt.

    [1] http://live.gnome.org/Seed
    [2] http://www.clutter-project.org

  10. nb sagt:

    Vielen Dank für den Torrent. War in 2 min auf meine Platte. Ich hoffe die Verteilungsprobleme der CRE Podcasts sind bald gelöst, damit ich den Feed wieder abonnieren kann ohne einen Hals zu bekommen bei “ETA 6h”.

  11. Proto-Typ sagt:

    Die News passend zur Sendung:
    http://www.golem.de/1002/73444.html
    “Mozilla schickt Jägermonkey ins Rennen”

  12. Walter Ondra sagt:

    Ich sag einfach nur “Danke” für diesen Podcast. HTML5 und CSS3 wäre sicher gleich ein weiteres Webthema.

  13. Ivan sagt:

    Mich freut es sehr dass der Tim einen Podcast nach dem anderen raushaut =) Die Themen sind auch wiedermal spitze

    Torrent ist eine gute Idee

  14. Horst sagt:

    Danke für den Podcast. Ich bin schon mächtig gespannt.

    Was Desktop-Apps angeht: Ich würde mir mal XUL ansehen. Also die Basis von Firefox, Thunderbird & Co.. Das ist im Prinzip auch alles Javascript. Zumindest habe ich das am Barcamp letztes Wochenende so gelernt. 8-)

  15. Ext JS sagt:

    Beim Thema JavaScript darf ein Hinweis auf Ext JS nicht fehlen, wurde leider im Podcast vergessen: http://www.extjs.com/products/extjs/

  16. cyberpike sagt:

    spitzen podcast! weiter so!

    und danke für den torrent. jetzt gehts zügig!!

  17. foobar sagt:

    Oh yes, yes, yes! Hoffentlich wird der so gut wie ich ihn erwarte. Oh yes!

  18. Tommy sagt:

    Toller Podcast!
    Mich hätte allerdings eure Meinung zu der “gängigen Praxis” interessiert, JavaScript per default erst mal zu blocken (NoScript). Seht ihr es nicht auch als echtes Risiko auf jeder Pups-Seite JavaScripts zu haben?

  19. MartinMustermann sagt:

    Ersteinmal Danke für diese tollen Podcasts,

    an die Bittorrentliebhaber von oben, wenn Ihr das ganze schon als
    Torrent anbietet ist ja alles schön und gut aber warum benennt ihr
    die Files denn immer um die passen dann gar nicht mehr so schön
    in die sauber sortierte Sammlung, das ist etwas nervig. Lasst sie
    doch so wie sie sind…

  20. Proto-Typ sagt:

    @Tommy: das sind die Paranoiker mit Aluhut. JavaScript ist ja nur dann gefährlich, wenn die Engine eine Sicherheitslücke hat, was aber genauso für HTML gilt.

  21. peter sagt:

    Torrens der letzten Sendungen gibt es immer hier

    http://torrent.firefly-it.de

    Feed:
    http://torrent.firefly-it.de/feed.xml

    Wäre schön wenn das auch auf der Hauptseite stehen könnte
    Klappt auch wunderbar mit Miro ;-)

  22. panzi sagt:

    Ich finde ja diesen Google Code Talk zu JavaScript SEHR interessant (hoff ich verwechsle den Link nicht): http://www.youtube.com/watch?v=hQVTIJBZook

    Da wird auch gesagt, dass man “new” eher nicht verwenden soll, sondern lieber den JSON artigen Weg nehmen sollte. Hab vergessen warum aber es gab da ein dummes Problem dabei. Auch gibts einen Google Talk zu der Zukunft von JavaScript, der sehr interessant war. Hab ich jetzt aber den Link grade nicht parat. Jedenfalls gilt für den verlinkten Talk Anschaupflicht (ist nicht nur inhaltlich interessant sondern auch gut gehalten).

  23. panzi sagt:

    Aja der, der den Google Talk über JavaScript hält (mein Post mit dem Link wartet noch auf Moderation) ist Doug Crockford (der JSON Erfinder) und kA ob das noch gesagt werden wird aber eval() sollte man NICHT verwenden! Viel zu gefährlich! Dafür gibts in JavaScript geschriebene JSON Parser und ich denk in Zukunft wird die XHR API der Browser eben nicht nur XML oder Plain Text, sondern auch JSON zurückliefern können (also dann parsts der Browser).

  24. Robi sagt:

    Denke Folgendes ist der von @panzi angesprochene Google-Vortrag zur Zukunft von JS:
    http://www.youtube.com/watch?v=Kq4FpMe6cRs

    Interessant in dem Zusammenhang auch:
    http://ejohn.org/blog/ecmascript-5-objects-and-properties/

  25. Cco sagt:

    Toller Java Podcast, super interessant und ein Thema das auch echt mal dran war. Schade finde ich, dass hier immer wieder über die Downloadgeschwindigkeit gemosert wird. Scheint für einige das wichtigste zu sein, wie schnell sie den Podcast laden. Ich dachte es zählt eher der Inhalt, und der ist wahrlich super und beachtenswert

  26. Paul sagt:

    @Cco
    Wen du großen Hunger hast willst du auch schnell etwas essen und nicht Stunden auf ein 5 Gänge Menü warten.

  27. panzi sagt:

    Aja, es kam ja auch die Frage auf wo JavaScript außerhalb des Browsers verwendet wird: In KDE kann man mittlerweile sehr viele Dinge mit JavaScript skripten. Z.B. kann man Plasma Widgets (sowas ähnl. wie OS X Dashboard Widgets) in JavaScript (und anderen Sprachen) schreiben und Programme wie Kate oder Amarok kann man mit JavaScript erweitern. Zumal dafür Qt verwendet wird kommt da auch Webkit zum Einsatz und in Zukunft eben auch das JITende JavaScript Core.

  28. panzi sagt:

    @Robi Jup, genau das Video meinte ich.

  29. animus sagt:

    Evtl. ganz interessant im Zusammenhang mit Applikationsentwicklung ist XUL. (https://developer.mozilla.org/En/XUL)
    Firefox und Thunderbird sind gute Beispiele für XUL-Applikationen ….

  30. ubi sagt:

    Einen guten Mirror habe ich mit Twitter bei http://mirror.hellercom.de/podcasts/ccc/cre/ gefunden.
    Bisher immer schnell!

    cu
    ubi

  31. nik sagt:

    Echt toll, wie häufig Du im Moment produzierst. Vielen Dank für die Arbeit und jahrelang interessante und tief schürfende Diskussionen!

  32. Tharben sagt:

    @zeroathome Danke für den Torrent.

  33. Georg sagt:

    Diese Folge finde ich nicht so gelungen. Der Gast kam leider nicht sehr eloquent rüber. Die zahlreichen ‘ähms’ waren schon störend, aber richtig schlimm waren die extremen Pausen in seinen Antworten/Sätzen.

    Um die Kritik besser einordnen zu können: bei CRE139 Medienkompetenz gab es in den Kommentaren auch einige Beschwerden wegen äh’s – fand ich dort aber subjektiv überhaupt nicht schlimm.

    Von der Struktur war es etwas Schade, das auf die Erklärung der Sprache an sich erst nach gefühlten 2h Stunden eingegangen wurde, nachdem über zig Engines/Frameworks gesprochen wurde.

    Auch die Erklärung von dem Objekt-Modell war etwas knapp/kryptisch.

  34. timschmi sagt:

    @Gerg: Hast du selbst schon mal einen Podcast gemacht? Sprachlich das gut zu machen, ist wirklich schwierig und muss eigentlich richtig gelernt werden. Und da war Malte sicherlich nicht brilliant aber auch nicht schlecht.
    Die Kritik an der Struktur der Sendung kann ich nachvollziehen. Trotzdem der kleineren Mängel fande ich Sendung insgesamt sehr gelungen. Besonders note.js sollte vertieft werden.

  35. duck sagt:

    DANKE für diesen supper tollen interessanten, unterhaltsamen, informellen Podcast! Die zwei Stunden sind sehr schnell verganen.

  36. David sagt:

    Javascript war für mich eines der interessantesten Themen im CRE, hat mir sehr gut gefallen! Auch den Bezug zu Flash fand ich sehr informativ und hilfreich.

  37. feuerrot sagt:

    http://wtfjs.com/ ist eine interessante Sammlung von Javascript-Schnippseln, bei denen man sich nur wundert, wenn man diese Feinheiten nicht kennt.

  38. Johannes sagt:

    Zum Thema JavaScript-IDE: Ich habe kürzlich entdeckt, dass NetBeans äußerst brauch ist! Beste Auto-Completion mit Anzeige der API-Dokumentation bisher, zumindest für jQuery, andere Frameworks habe ich noch nicht getestet.

  39. Oli sagt:

    Bevor ich in meinem Leben ein Cent an die Raubritter zahle … unterstütze ich lieber Podcasts wie z.B. CRE mit dem Geld.

    Weiter so!

  40. Edo Z. sagt:

    Malte ist sicher ein Held (schließlich hat er ja schon 10 Jahre Web-Entwicklung in MVC.Frameworks gemacht, deshalb fand er ja Rails so unspannend, was er da wohl 1998 benutzt hat… ;o)), aber er kann sein Wissen mitunter nicht richtig rüberbringen. Einige Erklärungen zu den Objekten und Prototypen zerfaserten, weil Tim ständig nachfragen musste, derartig, dass der rote Faden abhanden kam.

  41. Michael sagt:

    Vielen Dank für den Hammer Podcast! Habe mich sehr amüsiert auch wenn ich mal anderer Meinung war.

    @Edo Z: MVC basierte Web-Entwicklung ist in der Tat Ende der 90iger aufgekommen, als die ganzen Smalltalker da hin migriert sind.

  42. jt sagt:

    Eine sehr gelungene und spannende Sendung!

    Allerdings noch noch ein Hinweis: Da JavaScript ja wirklich in allen Browsern verfügbar ist, gibt es mitunter starke Bemühungen, Cross-Compiler für JavaScript zur Verfügung zu stellen. Zum Beispiel GWT (das Framework mit dem GMail gemacht worden ist) wäre erwähnenswert. Die Meinung von Malte zu sowas hätte mich echt interessiert!

    Zitat aus dem JavaPosse: “JavaScript is the assembly language of the Browser.”

  43. Peter sagt:

    Mmm…finde JavaScript cool (kenn’s nicht, aber das Konzept gefällt mir sehr gut). Könnte man mal nicht auch einen Podcast über andere, evtl. underhypte Programmiersprachen machen (Tcl)? Deren Konzepte etc.

  44. Tsvair sagt:

    Hallo!
    Ich hab dann auch gleich mal ne Frage ;-)
    Was ist denn heute so die aktuelleste JavaScript-Version und wo finde ich ne API- und ne Sprachreferenz/definition(BNF) dafür? Ich blick bei den vielen verschiedenen Versionen nicht mehr durch !

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *