Artikel mit Tag eclipse
Verwandte Tags
browser freebsd software apache blog bofh code coe fluxbox gentoo gmirror gnome hardware ide jail java kde killfile linux moinmoin munin netbeans open source openbsd paket management php plone ports postgresql programmieren python redmine root-tools sauerbraten scripting security server shell slim solaris sun turbogears ubuntu vcs virtualisierung aircraft bizarr debian freiheit helpdesk kiddies lart politik privacy recht rootforum spam virus development git netzwerk perl project euler project hosting rant subversion unix wiretap algorithmen backtory c fun openmcp rpg sudoku django dokuwiki lighttpd postfix wikiSonntag, 5. April 2009
NetBeans IDE for Python
Python ist für mich eine der besten, wenn nicht sogar die beste und produktivste Programmiersprache überhaupt. Allerdings fehlt mir bisher für Python eine IDE, welche die Entwicklung mit Python genauso gut und mächtig unterstützt, wie etwa Eclipse oder Sun Studio dies für Java oder C++ tun. Für Windows gibt es mit der Wing IDE eine brauchbare (kommerzielle) Lösung; im FOSS-Bereich blieb bislang nur Pydev. Pydev ist zwar besser als ein einfacher Editor, aber alles andere als das gelbe vom Ei: Funktionen, die Pydev wirklich mächtig machen (etwa Code Completeion), sind nur in der kommerziellen Erweiterung Pydev Extensions enthalten, und auch sonst macht das Projekt in letzter Zeit eher den Eindruck, ein Lockangebot für kommerzielle Produkte von Aptana zu sein.
Seit einiger Zeit brodelt es allerdings in der NetBeans-Projektküche: Dort verfolgt man das ehrgeizige Ziel, nicht weniger als „the best integrated tool for programming in Python“ zu schaffen. Seit Anfang des Jahres steht eine Early Access Version der NetBeans IDE for Python (basierend auf NetBeans 6.5) zum Download bereit, und mit eben jener habe ich nun ein wenig herumgespielt. Sowohl unter Solaris 10 (Sparc) als auch FreeBSD 7.1 (i386) lässt sich die EA-Version problemlos „installieren“: während für Solaris tatsächlich ein Installer existiert, müssen sich FreeBSD-Nutzer mit dem „OS Independent ZIP“ begnügen, was aber auch kein Drama ist – einfach an eine beliebige Stelle im Dateisystem entpacken und bin/netbeans ausführen. Hierfür wird eine funktionierende Java-Umgebung vorausgesetzt – unter Solaris natürlich kein Thema, und unter FreeBSD funktioniert NetBeans einwandfrei mit dem Diablo JDK 1.6 aus den Ports.
Auch wenn der Swing-Look von NetBeans insgesamt etwas weniger gefällig ist als die SWT-Erscheinung von Eclipse, so braucht sich die EA-Version keinesfalls hinter dem etablierten Konkurrenten verstecken. Die Projektverwaltung ist mit Eclipse auf Augenhöhe, und auch der Klassen- und Funktionsbrowser ist recht ähnlich aufgebaut. Ebenfalls typisch für eine „große“ IDE ist die Aufgabenverwaltung und eine Werkzeugsammlung für Refactoring. Besonders punkten kann NetBeans gegenüber Pydev durch den integrierten Debugger inklusive Performance-Messwerkzeugen, eine Python-Konsole und Code Completion in der Editor-Komponente. Als besonderes Bonbon unterstützt NetBeans neben den klassischen VC-Systemen CVS und Subversion auch Mercurial – bei einer Python-IDE eigentlich naheliegend…
Natürlich hat NetBeans auch einige Schwächen, die an dieser Stelle nicht verschwiegen werden sollen: So nervt etwa die hohe Affinität zu Jython – an manchen Stellen muss man NetBeans schon mit sanfter Gewalt dazu überreden, auf den nativen Python-Interpreter zurückzugreifen. A propos Interpreter: NetBeans ließ sich mit keinem Trick dazu überreden, Python 3.0 in die Liste der verfügbaren Python-Plattformen aufzunehmen. Gerade für die Entwicklung neuer Projekte ist das schade, da es sich bei diesen besonders anbietet, von vornherein auf die neue Python-Generation zu setzen.
Alles in allem halte ich aber diesen ersten Wurf für bereits sehr gelungen und dem Platzhirsch Pydev mindestens ebenbürtig, in einigen Punkten sogar für deutlich überlegen. Man darf also auf die weitere Entwicklung gespannt sein…
Sonntag, 27. Januar 2008
Kampf der Giganten
Hin und wieder stößt man im Netz auf die Behauptung von Opera-Verfechtern, ihr Lieblingsbrowser sei deutlich schlanker als jeder andere (grafische) Browser. Hier die Probe auf’s Exempel (gekürzte Ausgabe von ps ux unter FreeBSD):
PID /span>CPU MEM VSZ RSS TT STAT STARTED TIME COMMAND
51196 0,0 7,3 159036 152420 p2 S+ 5:36pm 2:44,75 /usr/local/share/opera/bin/opera
43863 0,0 7,5 243880 155392 ?? S 4:07pm 11:02,97 /usr/local/lib/firefox/firefox-bin
54006 0,0 0,1 4276 3104 p5 S+ 1:25am 0:00,02 w3m http://www.my-universe.com
Der Blick auf die Resident Set Size (RSS) zeigt: beide Browser verbraten für die selbe Aufgabe (Darstellung meine Website) ca. 150 MB RAM. Spaßeshalber habe ich mal w3m auf die selbe Seite losgelassen – wobei der Vergleich natürlich leicht unfair ist. Übertroffen werden die beiden nur von Eclipse, dass sich mit über 300 MB am ungeniertesten bedient.
Sonntag, 23. Dezember 2007
Blowing up my disk
Auf meiner Workstation (FreeBSD) läuft ein Apache mit mod_php zu Entwicklungs- und Testzwecken. Damit man auch schön was entwickeln und testen kann und sich PHP nicht gleich in die Hosen macht, sind max_execution_time und memory_limit kräftig hochgedreht – ersteres liegt bei 120 Sekunden, letzteres bei 256MB. Dazu noch ein sehr gesprächiges Logging (E_ALL), kombiniert mit einer for-Schleife mit fehlerhafter Abbruchbedingung, einem Schuß Übernächtigung garniert mit ein wenig Unaufmerksamkeit und zur Krönung des ganzen Eclipse, das nach jedem Speichern den PHP Browser aktualisiert – und schon fliegt einem die Kiste um die Ohren. Totalabsturz, nichts geht mehr; das System lässt sich auch nicht mehr brauchbar booten. Da hilft nur noch der Griff zur Rettungs-CD. Ein Blick auf die Platte offenbart: 4GB für /var waren einfach zu wenig. Mein kleiner Kunstgriff hat sage und schreibe 3,4GB an Error-Log erzeugt und laut df eine 108%ige Belegung der betroffenen Partition verursacht. Nichts, was sich nicht beheben ließe – UFS2 und ext2 sind zum Glück robuste Dateisysteme, und nach einem fsck ist auch alles wieder gut. Zeit für’s Bett, würde ich sagen…
Sonntag, 26. August 2007
Software-Fabrik
Die wenigsten, die mich kennen, sind überrascht, dass ich in meiner Freizeit hin und wieder an irgendetwas herumprogrammiere. Eher überrascht sind sie dann, wenn sie mitbekommen, dass ich im Allgemeinen Wert darauf lege, bei der Entwicklung einigermaßen professionell vorzugehen. Wenn’s nicht mal nur eben ein kleines Shell-Skript ist, dann landen die Quellen im Subversion-Repository, und programmiert wird mit einer vernünftigen IDE — normalerweise Anjuta für GTK-Anwendungen und Eclipse mit EPIC und PHPEclipse für den ganzen Rest.
Wer selbst schon mal in Java programmiert hat (und dabei mehr als nur ein Hello-World-Applet gebastelt hat), wird mir zustimmen, dass die Sprache geradezu danach schreit, das Grundgerüst mit einem UML-Modellierungstool zu erstellen und nur noch die Ausgestaltung der Methoden auf die klassische Tour zu erledigen. Das ist einfach produktiver, und die Qualität der entstehenden Applikationen ist ebenfalls höher — zumindest was die Klassenstruktur anbelangt.
Das beste Tool, das ich bisher gefunden habe und dass eine sehr gute Integration mit Eclipse bietet, ist ojectiF, dessen Hersteller microTOOL dankenswerter Weise eine kostenfreie Personal Edition zur Verfügung stellt — perfekt für Programmierer wie mich, die das ganze nur aus Jux und Dollerei machen und von daher keine Unsummen in Profi-Tools wie Rational & Co. investieren können. Aber natürlich hat die Sache auch einen Haken. Entgegen aller Erwartungen wurde objectiF nicht etwa mit Java entwickelt, sondern basiert auf dem .NET-Framework von Microsoft. Der Hersteller vertreibt auch ausschließlich eine Windows-Version. Mein Versuch, das fertig entpackte und installierte objectiF per Mono unter FreeBSD zum laufen zu bewegen, war jedenfalls nicht von Erfolg gekrönt. Schade eigentlich… Wenn jemand ein gutes Modellierungstool kennt (am liebsten natürlich Open Source), das eine brauchbare Eclipse-Integration und eine grafische Modelldarstellung bietet, dann immer her damit!


Content is subject to the conditions of the