Geekstammtisch

Geekstammtisch

Interviews von und mit Geeks aus allen Bereichen

GST023 - The NeXT Episode

Audio herunterladen: MP3 | AAC | OGG | OPUS

Unser Gast (00:00:00)

  • Mateus "@seanlilmateus" Armando
  • "Lange Namen und die Ämter"
  • Hat eine Fachinformatik Ausbildung und ein abgebrochenes Informatikstudium vorzuweisen
  • Arbeitet bei der Deutschen Telekom
  • Ist in der MacRuby (http://macruby.org/) und RubyMotion (http://www.rubymotion.com/) Szene aktiv
  • Ruby is Magic: Cupcakes! https://speakerdeck.com/railsbros_dirk/ruby-is-magic-cupcakes

Arbeiten der Telekom (00:03:55)

  • Mateus automatisiert Dinge mit Ruby auf der Arbeit, ansonsten kommt es weniger zum Einsatz
  • Mateus testet Mobilfunkentgeräte mit dem Netz der Telekom
  • Zentrale Stelle für mehrere Länder
    • Funktionieren die Geräte mit dem Netz der Telekom?
    • Softwaretests, Funktests
  • Mateus bekommt oft mal neue Geräte zum Testen in die Hand
    • Die neuen Apple Geräte werden von speziell ausgewählten Personen getestet; Apple ist da etwas pingelig :)
  • Wenn Hersteller Mist machen, dürfen die Geräte nicht ins Netz der Telekom
  • Das Notification System eines ungenannten Devices hat vor einiger Zeit für großflächige Ausfälle gesorgt
  • Für Sicherheitsrelevante Fragen gibt es noch mal eine eigene Abteilung
  • Security Research Labs (Karsten Nohl) - "Rooting SIM cars": https://srlabs.de/rooting-sim-cards/
  • Wireshark: http://www.wireshark.org/
    • Wireshark und GSM: http://wiki.wireshark.org/GsmProtocolFamily

GSM Hacking, Security und Co (00:14:30)

  • Testgeräte und -installation sind extrem teuer
  • Base Transceiver Station: http://en.wikipedia.org/wiki/Basetransceiverstation
  • Mehr Augen, finden mehr Fehler; bisher wurden Mobilfunkstandards wenig von der "Masse" unter die Lupe genommen
  • Einige Fehler müssen sowohl beim Hersteller als auch auf Netzebene behandelt werden
  • NTT DOCOMO: http://www.nttdocomo.co.jp/english/
  • NTT DOCOMO Ausfälle: http://www.geek.com/mobile/ntt-docomo-asks-google-to-limit-android-data-use-1463313/ http://www.techinasia.com/docomo-outage-line/

C, Java, NeXT, WebObjects, Erlang… (00:19:35)

  • Mateus hat mit C im jungen Jahren angefangen - Basti hat mit BASIC angefangen: 1 : 00 ;-)
  • Wir machen einen Ausflug durch diverse Programmiersprachen und Umgebungen, die NeXT und Apple durchgemacht haben
  • Mateus hat während seiner Ausbildung bei T-Systems Erlang programmiert
  • Ruby wurde irgendwann zu Mateus' Hobby
  • PyObjC: http://pythonhosted.org/pyobjc/
  • RubyCocoa: http://rubycocoa.sourceforge.net/
  • Wir rätzeln, seit wann Ruby in OS X dabei ist
  • Der Ruby-Guy bei Apple war Laurent Sansonetti (@lrz)
  • Apple Scripting Bridge: https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ScriptingBridgeConcepts/Introduction/Introduction.html

MacRuby & RubyMotion (00:27:30)

  • Bertrand Serlet: http://en.wikipedia.org/wiki/Bertrand_Serlet
  • Bertrand Serlet basht Windows Vista https://www.youtube.com/watch?v=n9UPhwmjJ-Y
  • Laurent ist zu Bertrand gegangen und hat vorgeschlagen Ruby auf der Objective-C Runtime laufen zu lassen
  • Das war der Anfang von MacRuby: http://macruby.org/
  • Es stand im Raum, ob Apple nicht MacRuby für das iPhone verfügbar machen wird (das war 2008)
  • ABER: MacRuby ist Garbage Collected und es gibt und gab auf dem iPhone nie GC.
  • Es wurde versucht MacRuby ohne GC zu bauen - nicht einfach
  • Automatic Reference Counting: http://en.wikipedia.org/wiki/AutomaticReferenceCounting
  • Garbage Collector in OS X 10.8 ist deprecated
  • Laurent Sansonetti gründet 2012 eine Firma und präsentiert: RubyMotion: http://www.hipbyte.com http://www.rubymotion.com/
  • RubyMotion ist MacRuby mit ARC für iOS! Kommerzielle Lizenz, kostet ~150 EUR
  • Wir rekapitulieren: RubyCocoa, MacRuby, RubyMotion
  • RubyMotion gibt es auch für Mac
  • Shizuo @watson1978 Fujita arbeitet zusammen mit Laurent an MacRuby und RubyMotion
  • ARC bei Objective-C wird zur Compile-Zeit gemacht
  • MacRuby wird auch kompiliert, mit LLVM
  • Bindings machen Probleme bei MacRuby und RubyMotion
  • Blocks in Ruby sind Closures (http://en.wikipedia.org/wiki/Closure(computerscience)) und sind sehr schwer in MacRuby zu implementieren
  • Weak Reference: http://en.wikipedia.org/wiki/Weak_reference
    • Es gibt WeakRef in Ruby! http://www.ruby-doc.org/stdlib-2.0/libdoc/weakref/rdoc/WeakRef.html
  • Ruby Binding: http://www.ruby-doc.org/core-2.0.0/Binding.html
  • How to Marshal Procs Using Rubinius: http://yehudakatz.com/2011/11/19/how-to-marshal-procs-using-rubinius/
  • Kernel#eval ist in RubyMotion nicht verfügbar, weil das die AppStore Richtlinien nicht erlauben
  • Ansonsten geht alles in RubyMotion, inkl. REPL
  • Im Laufzeitverhalten sind RubyMotion Anwendungen ohne Unterschied zu Anwendungen in Objective-C
  • Das Kompilat ist grundsätzlich nicht voneinander zu unterscheiden

Objective-C Runtime (01:08:00)

  • Objective-C Runtime ist noch nicht so weit wie die JVM mit unterstützten Sprachen, aber es gibt trotzdem einiges
    • Nu: http://programming.nu/
    • F-Script: http://www.fscript.org/
    • eero: http://eerolanguage.org/
  • Es war wahrscheinlich nicht von Anfang so gedacht, aber das Design lässt es sehr gut zu
  • Damals sollte auf OpenStep (https://en.wikipedia.org/wiki/OpenStep) Java laufen
  • Es gibt ein GNUStep (http://www.gnustep.org/) basiertes System, dass sich mit Smalltalk programmieren lässt (http://etoileos.com/etoile/)

Probleme mit RubyMotion (01:12:45)

  • Bis vor kurzem gab es noch viele Probleme mit Blöcken in Bezug auf Speicherlücken
  • Für Ruby-Entwickler sind Blöcke absolut normal und werden überall verwendet
  • Viele Bugs sind entdeckt worden bei der (falschen) Verwendung von CoreData (https://en.wikipedia.org/wiki/Core_Data)
  • Wichtig ist, CoreData ist keine Datenbank, aber man kann dort Objekte ablegen
  • CoreData ist sehr mächtig und nicht leicht zu verstehen
  • Da CoreData ein Teil von iCloud-Sync ist, führt dass dazu das iCloud-Sync oft nicht richtig umgesetzt ist
  • RubyMotion ist nicht Ruby, sondern ein Dialekt von Ruby
    • Beispiel ist, dass man mit der Block-API von Objective-C interagieren muss
    • Named Arguments sind verhalten sich unterschiedlich
    • In Objective-C sind die Named-Arguments Teil des Methodenname
  • Die großflächige Verwendung von Named-Arguments wird sich in Ruby noch etwas hinziehen
  • Wenn man für iOS entwickeln will, aber keine Lust auf Objective-C hat, dann macht man was falsch
  • Dokumentation ist in Objective-C und die Laufzeitumgebung mit all ihren Eigenheiten ist eben auch Objective-C
  • Aber: RubyMotion ist nach Mateus die beste Möglichkeit Objective-C zu lernen
  • RubyMotion ist sehr viel kompakter als Objective-C, daher die bevorzugte Umgebung von Mateus

Apple iPhone Event (01:30:20)

  • Wir wollen keine goldenen iPhones
  • Event war leider nicht live
  • Im Home-Office-Cologne gab es Rudelgucken mit Tippspiel
  • Enttäuschung, dass es keine Mac News gab
  • Wieder kein AppleTV SDK :-)
  • iPhone ist so wichtig, dass nichts parallel vorgestellt wird
  • Aber: Mavericks und Mac Pros werden kommen, aber ohne Event ist der Mac Pro eher unwahrscheinlich
  • Neue iPads und iPods stehen auch noch aus, aber dafür lohnt sich auch ein eigenes Event
  • Eigentlich haben sie Material für noch 2 Events
  • Dirk wünscht sich ein AppleTV mit SDK und der Möglichkeit einen Playstation Controller anzuschließen
  • Der Coup des Jahres wäre eine AppleTV Spieleconsole
  • iPhone/iPod als Controller für Spiele inkl. Secondscreen
  • Wir gehen nicht davon aus, dass Apple einen eigenen Controller bauen wird/kann
  • Am Anfang noch vorsichtig im Bereich, in letzter Zeit wird das ganze sehr ernsthaft verfolgt, Stichwort: Grafikleistung und OpenGL 3
  • In Bezug auf Independent-Spiele ist Apple bereits da wo Microsoft und Sony gerne hinmöchten
  • Das Event war das Ende der Ära Steve Jobs und der Beginn der Ära Jony Ive
  • Basti findet das "non" lustig ist, wenn die Löcherhülle auf dem 5C ist (https://www.apple.com/iphone-5c/design/images/casesgallerywhitewhite2x.png)
  • Die Position des iPhone 5C ist noch unklar
    • Weder ein Billig-Phone
    • Gute Leistungsdaten
    • Es ist aber bunt
  • Basti sagt nach wie vor, Apple hat es nicht nötig ein Billig-iPhone zu bringen
    • Unterschied momentan ist die Qualität der Anwendungen
    • Hintergrund wird nicht sein, mehr Umsatz über iPhones zu machen, sondern iOS weiterzuverbreiten
  • Das 'C' steht wahrscheinlich für 'Color' und nicht 'Cheap' ;-)
  • Wir warten weiterhin auf das 4k-Display…

Kommentare


Neuer Kommentar

Durch das Abschicken des Formulars stimmst du zu, dass der Wert unter "Name oder Pseudonym" gespeichert wird und öffentlich angezeigt werden kann. Wir speichern keine IP-Adressen oder andere personenbezogene Daten. Die Nutzung deines echten Namens ist freiwillig.

Über diesen Podcast

Mehr oder weniger regelmäßiger Stammtisch rund um Geektum, (Web)development und was immer unsere Gäste an interessanten Dingen zu erzählen haben

von und mit Dirk Breuer, Sebastian Cohnen

Abonnieren

Follow us