What after studying computer science?

No Gravatar

Its long till you heard from me as I was finishing on my Diploma till now. I finally did it. Well, spelling correction and some reader response still needs to be incorporated, but after all its just finished.

It about an online-rich-text-editor with support for RDFa (as lately support was announced by Google for RDFa, it should be pretty interesting for some out there). This means that I took WYMeditor, put it into a blogging platform, connected it with Freebase, added some RDF-Parsing and there you go with annotating your HTML sourcecode with semantic RDFa-markup.

You can add resources from Freebase without knowing anything about RDF, RDFa or Ontologies, you can use some static concepts like the Google review-stuff and some FOAF-concepts and you can even generate RDF-triples, that means semantic statments that machines can interpret. I mainly focussed on usability as I imaginged that most of the worlds documents don’t get created by too technical-adept people but others who’s knowlegde focusses on another area - and who use rich-text-editors to place content online.

I also had a pretty good idea for a sematic twitter service that could revolutionize the semantic web - but as I really need some experience in the free enterprise world, I can’t really start a startup now … or can I? Well, there are more buisiness ideas in my head, so maybe someone else should do the sematic twitter stuff. Well, I’ll maybe just put it online after its approved, we’ll see.

But what now? Another three year of science? No, after all, I need a job now. As I’d like to stay in Oldenburg (Germany, near Bremen), I need something in about half an hour range from here. I like web-technology, am into Java because its the “educational standard language”, but would really like to get to know some more. I worked with Struts2, JavaScript, jQuery, XML, JSON, AJAX, PHP, RDF, OWL, HTML, CSS, SVN, … I’m interested in iPhone-Applications, Social Media, Scrum Project-Management, Usability Engineering, Semantic Web (+more stuff) and would love to find a job to learn more and do something producive with my skills.

Some big companies still don’t want new people as the financial crisis makes bureocrats feel more important now, and some just don’t think they should get to know you if you didn’t send a copy of your diploma with the letter of application - and they don’t really read the letter, as I clearly say that I need to wait about two more month till I get it.

Well, its not that I don’t know what to do and learn in my free time. But where shall I begin? Learning .NET and Visual Studio? Delving into Flash or Silverlight? Try to make an iPhone App (got some useful ideas for that)? Work on business ideas? Finish reading the latest Design Patterns- or Scrum-book? Try out Hibernate? Blog some more? Many questions, no answers. Perhaps I’ll just write my next dozen of application-letters. After all I’ll need some money to buy a nice server machine ;-)

Learning to Code - You Really Want to be a Programmer?

No Gravatar

There is a lot that you can do wrong. A lot that I did wrong and that took its time. But after all I think I made it. So here are some simple rules that you should follow if you’re trying to become someone who touches keyboards a lot:

Have a goal. If you just want to be a programmer but don’t know anything that you’d like to program, you’ll have problems keeping yourself motivated. Going into a certain direction of technology is a good idea too, so you know what you can concentrate on.

Just do it. (In fact, this statement is the best you can do in any situation of life.) Every time that you’ll write code, you’ll learn something new that will get you closer to your target.

Never miss an opportunity to code. If you have a project where you’re working / studying, try to take responsibility for some functional piece of software. Documentation or user-testing won’t get you further.

Use an IDE. I began with writing java code in a text editor, compiled it by hand and did so for some time, because I thought “Eclipse looks … complex”. It was an error that cost me soo much time. Embrace all help that you can get, if its an IDE, a build tool or whatever tools you’re friends and colleagues use. They all save time, and thats the stuff life is made of.

Don’t forget to use a console too. There are a lot of graphical things out there that want to make you move the mouse more and the keyboard, but often there are no better solutions than just using the command line. Don’t be afraid of it, you’ll have to learn all the commands sooner or later anyways.

Make a list of skills & experiences that you’d like to have. Making your first objects, Unit-testing, working with threads, building a gui, parsing some HTML or XML, getting data into a database or out of it, using the twitter API, building a website, writing a firefox-plugin; HTTP, HTML, CSS, JavaScript, Flash, (a lot more Web-Technologies), Frameworks of all kinds … write down what you think would be useful whenever you meet something new you want to learn … and then make it some kind of long-term-To-Do-List.

Don’t think too much about inheritance, interfaces, reflection, … you can first live without that or just use it by-the-book and will understand what they do soon.

There’s no magic involved. Just code. Like in JUnit, I somehow thought it would verify that my code has no errors if I just configure it correctly - plain wrong, no magic inside! You have to write code that checks everything in your other code. I also thought Struts2 would make websites by magic - again, just code. There’s nothing visible that you don’t code, its just makes just need very few code to get those websites running.

Framework is a signal word. Its means “Software that makes something easier for you”, but you should be aware that you’ll need to invest some time to learn how to use it. Framework should give you a positive feeling, when you hear it, like “I’m here to help you!”. Again, no magic involved. Usually ;-)

Ask. Use online forums, ask friends or people you work with. Google can’t always help (but don’t ask question that Google can answer easily). There is so much that could be known about technology, that noone knows everything (especially when you don’t have your master in computer sciences and 10 years of field-experience). Just accept that and also accept if others don’t have all your knowledge.

Teach. If someone asks you and you know a solution, then help him. Assume he didn’t understand something basic that you know and be sure that you teach it so he can solve the same task again later on. Never just give someone the code, they won’t gain anything from that.

Find someone to learn with. Someone who is the same stupid guy like you and also doesn’t know how to do that complicated stuff. Where one brain gets stuck, two often find a solution and both learn. Working together on a project is a great way to learn. Just make sure the other person keeps up with you, or vice versa.

Never stop learning. Technology evolves with lightspeed, new languages appear, new technology is invented. If you’re involved with computers, you’ll probably be one of the most-learning-and-training persons of the world. Never assume you’re ready to “just do work”. Where would be the fun then?

Get tech feeds. Or follow twitter-users who have the smae interests that you have. From time to time, there will be interesting articles that will teach you good new stuff.

Don’t be afraid to buy books or magazines. Its not always cheap , but if it saves you time learning you should just spend that little money. You’ll get that money back with your skills later.

Get your head around this object-orientation-thingy. Don’t use GOTO. Don’t put the whole code in the main-method. Classes are just there to produce objects and objects are nothing more than some fields and methods in one instance. If you write a main-method, produce an object that does that work from there. Objects can be tested nicely and are more useful.

Its not just coding. Software design, team management, data structures, design patterns, team-collaboration, algorithms, time management are all with you at that party. And much more. And don’t you ever forget your social skills. They might be the most important after all. Even programmers need friends ;-)

Be careful with your coffeine comsumption. A programmer is a person who converts coffee to code, after all. If you still want to code, connect with me on Twitter. What do you think I missed? Do you have more hints for the newbies? What was not ever told YOU, that you should have known from the start? Just add a comment …

Increasing Speed: Evolution of Lifetime

No Gravatar

We are living in exponential times. Science works much faster than ever. New technology that helps us managing our life in a more comfortable and quicker way gets developed every day. The world population cooperates over the internet. People are confronted with more and more information every day. Social bookmaring services and twitter gives us 1000 interesting links to watch every day. This might either mean information overload or adaption of the brain. Will we cope this stream of information and be hyperintelligent or will we just waste our time watching useless information making us inproductive?

Just in case you didn’t see this video before, take the 5 minutes of time and watch it. Its really impressive.


Did You Know? from Amybeth on Vimeo.

Reblog this post [with Zemanta]

Du willst also Informatik studieren?

No Gravatar

Zwei Dinge, die zusammengehören, aber nicht immer zusammen fallen, sind Informatik und Programmieren. Ich habe Informatik studiert an der Universität Oldenburg, mit dem Gedanken, dass man innerhalb des Studiums auch Programmieren lernt. Nun, selbstverständlich kann man es dort lernen, aber im Nachhinein möchte ich doch behaupten, dass man bereits programmieren können sollte, wenn man ein Studium der Informatik anstebt. Wenn man bereits programmieren kann, sind die Themen durchaus interessant und man hat die Möglichkeit, wissenschaftliche und ingenieursmäßiges Vorgehen zu erlernen, Projektmanagement aktiv zu betreiben und technische Grundlagen kennen zu lernen. Mir wurde vor kurzem gesagt, man werde als Informatiker auf Entscheiderpositionen vorbereitet, was ich bestätigen kann. Man lernt irgendwo alles kennen, muss sich aber seine Interessen selbst beibringen, weil es eben nur ein paar Vorlesungen zu jedem Bereich gibt. Praktische Erfahrung bekommt man allerdings nur in geringem Maße vermittelt.

In Sachen programmieren bekommt man z. B. einen Programmierkurs in Java, macht dann ein Softwareprojekt, in dem diejenigen, die bereits programmieren können den Ton angeben und man eigentlich nicht wirklich den Durchblick hat, wenn man noch kein Programmier-Ass ist. Dann folgen Projektgruppe (gleiches Problem) und Individuelles Projekt (heute: Bachelorarbeit) - das individuelle Projekt ist dann der Zeitpunkt, an dem man spätestens programmieren können muss - es sei denn man wählt sich ein theoretisches Thema, dann ist die Abschlussarbeit (Master) der Zeitpunkt, an dem man spätestens die praktische Erfahrung braucht (Empfehlung: mach ein schwieriges IP). Alle anderen Module betrachten Theorie, Methodik, einzelne Problemfelder - aber nirgends sammelt man praktische Erfahrung. Die Lösung?

  • Sich reinhängen! Man sollte einfach jedes Problem angehen, sich im Softwareprojekt und der Projektgruppe ein schwieriges Problemfeld aussuchen (und sich nicht auf die Dokumentation zurückziehen), seine bereits programmierenden Mitstudenten ausfragen und sich selbst zu Hause noch ein komplexes Projekt aussuchen, an dem man lernen kann.
  • Vorher programmieren können und schon vor dem Studium viele Technologien beherrschen. Heutzutage bedeutet das: privat im Internet lernen und den Informatik-Kurs an der Schule besuchen. Irgendeine Programmiersprache sollte man schon mal programmiert haben (ich kannte nur BASIC und TurboPascal, es gibt da hilfreicheres), HTML und XML sollte man vielleicht schon verstanden haben. Eine weitere Anforderung wäre, dass man generell mit abstrakte Gedanken umgehen können sollte, denn wenig, was man in einem solchen Studium lernt, ist nicht abstrakt.
  • Nicht Informatik studieren, sondern artverwandte Sachen machen, wäre auch eine Lösung. Über 50% bestehen nicht einmal das Grundstudium (bzw. Bachelor) und geschätzte 80% schliessen das Studium nie ab. Ein Fachhochschul-Studium ist zum Beispiel ein fast ausschliesslich an praktischer Arbeit interessiertes Studium, in der man das lernt, was man später auch in einem praktischen Beruf gebrauchen kann, in dem die wissenschaftliche Arbeit mehr oder weniger überflüssig ist. Wenn man sich das nicht zutraut, kann man ja auch eine entsprechende Ausbildung im IT-Bereich machen, in der man dann wahrscheinlich mehr mit Bürokratie, Netzwerktechnik und Computerschrauben an echter Hardware zu tun hat. Noch dazu ist das Studieren heutzutage viel teurer geworden, ca. 750€ pro Semester kann man rechnen, und somit ist ein Nebenjob quasi Voraussetzung. Dringende Empfehung hier: einen Nebenjob machen, in dem man ein bisschen praktische Erfahrung sammeln kann!

    Eine weitere Hürde gibt es im Informatik-Studium: Mathe! Ein großer Teil der Oldenburger Informatik-Studenten scheitern an Mathematik in den ersten drei Semestern und verwandten Fächern … da hilft nur Büffeln, bis der Arzt kommt … oder die mathematischen Grundlagen einfach schon in der Schule gut verstanden zu haben.

    Wenn man sich denn für ein Studium entschieden hat, empfehle ich dringend, beim Linux-Kurs gut aufzupassen und sich dringend die grundlegenen Technologien zur praktischen Arbeit auf seinem Heimarbeitsplatz zu installieren, und damit einfach herumzuexperimentieren. Das sind beispielsweise Eclipse, LaTeX und ein Webserver + Datenbank. Geizt nicht an Büchern! “Wissenschaftlich mit LaTeX arbeiten” oder grundlegende, gutgeschriebene Bücher zum Programmieren an sich sind Gold wert - es sei denn man nimmt das Studium eh nicht so ernst, und dann sollte man es gleich lassen oder eine Ausbildung anstreben. Manchmal werden kostenlose Kurse zum wissentschaftlichen Schreiben angeboten, auch sowas sollte man dringend besuchen.

    Dieser Artikel zum Thema Wie werde ich ein Java-Entwickler ist meiner Ansicht auch sehr lesenswert, wenn es um Technologie, Programmieren und Software-Engineering geht. Danke für die Aufmerksamkeit!

    Jobangebot im IÖB

    No Gravatar

    Blog-Update: So, seit gestern gibt es die Pageviews und auf der rechten Seite eine Shout-Chat-Box. Die E-Mail-Funktion unter den Artikeln funktioniert noch nicht, und ich werde vor meinem Urlaub am 10.07. auch nicht mehr dazu kommen, das zu reparieren. Die verwandten Artikel zeigen inzwischen auch was sie sollen, und vor den Ferien werden nur noch die Links aktualisiert. Vielleicht bau ich noch den von Stimme vorgeschlagenen Zeitstempel ein. Sonstige ToDos umfassen das rausnehmen der Shoutbox bei den letzten Kommentaren.

    Heutiger Hinweis: Ich habe mir vor ca. 2 Monaten für 60 Euro einen schicken Notebook-Rucksack von Gravis gekauft, der mir nicht nur den Rücken schont, weil ich immer mit meinem Schlepptop rumjuckeln muss, nein, ich bin rundum zufrieden mit dem Ding. Auf www.ibood.de findet ihr heute einen günstigen Laptoprucksack, der auch einen vernünftigen Eindruck macht - den würde ich mir heute bestellen, wenn ich nicht schon einen hätte. Nun aber zum eigentlichen Inhalt:

    Arbeitsstelle neben dem Studium gefällig? Das IÖB (Institut für Ökonomische Bildung) sucht neue studentische Hilfskräfte, und zwar einen im Bereich Marketing und Vertrieb, einen im Bereich Schulpraxis und einen IT-HiWi. Ich war vorher IT-HiWi und kann nur sagen dass die Kollegen spitze sind und man neben dem Studium durchaus etwas Praxis gebrauchen kann. Man verdient 8€ die Stunde, hat aber auch keinen stressigen Job. Der Arbeitsplatz befindet sich Innenstadtnah in der Bismarckstrasse 31 in Oldenburg. Die Stellenausschreibungen sind im folgenden zum Download verlinkt:

    Stellenausschreibung_HiWi_B2_Schulpraxis.pdf

    Stellenausschreibung_Hilfskraft_Marketing_Vertrieb.pdf

    Stellenausschreibung_it_hiwi.pdf

    IÖB-Stellenausschreibungen

    Der Botanische Garten Oldenburg

    No Gravatar

    Im Rahmen des botanischen Grundpraktikums an der Universität Oldenburg machte der Kurs am 07.06.2008 eine kleine Exkursion durch den botanischen Garten Oldenburg. Wir mussten hierbei ein kleines handschriftliches Protokoll abliefern, was sich mit einem bestimmten Teil des Gartens auseinandersetzt, aber da ich gar nicht mehr ohne Tastatur schreiben kann mache ich lieber einen kleinen Bereicht für meine Internetseite fertig und schreibe ihn danach handschriftlich ab, wenn das notwenidig sein sollte.

    Zuerst gebe ich eine kleine Einleitung, dann noch einen kurzen geschichtlichen Abriss zum botanischen Garten Oldenburg und komme dann zu einer Kurzbeschreibung der einzelnen Gebiete. Als eigentliches Thema meines Protokolls soll der Arzneimittelgarten etwas näher erläutert werden. Alle Informationen stammen von Kerstin Wilhelm, unserer Praktikumsleitung.

    Einleitung

    Weltweit gibt es etwa 300.000 verschiedene Arten von Blütenpflanzen. Etwa 30% dieser Arten sind in Botanischen Gärten vorhanden. Dort sind Pflanzen gegen die Möglichkeit des Aussterbens und vor unkontrollierter Hybridisierung geschützt. Die größten botanischen Gärten weltweit sind der Missouri Botanical Garden in der USA, die Royal Botanical Gardens in London und der Botanische Garten Berlin.

    Botanische Gärten führen Samenkataloge über ihre Bestände und helfen sich gegenseitig und auch Forschern aus, indem diese sich über die Samenkatalog benötigte Samen bestellen können. Die Botanischen Gärten stehen ebenfalls in Verbindung zu den großen Gendatenbanken.

    Auch die Lehrer- und Studentenausbildung wird mit Hilfe der Gärten gefördert. Die Botanischen Gärten dienen neben ihrer Eigenschft als Forschungs- und Lehreinrichtungen allerdings auch zur Entspannung und Information der Bürger, die die Gärten relativ uneingeschränkt begehen können.

    Geschichtlicher Abriss

    Der Botanische Garten Oldenburg wurde 1882 als Lehrseminar für Lehrer gegründet, damit diese sich in heimischer Flora und Fauna weiterbilden konnten.

    1916 wurde eine systematische Anlage gegründet mit ca. 1200 Arten. Das ist etwa die Anzahl der Arten, die auch in Nordwestdeutschland vorliegen. In Mitteleuropa und den Alpen gibt es ca. 3000 Arten.

    In den 30er Jahren wurde der Garten vom Land Oldenburg übernommen.

    In den 50er Jahren ist der Garten auf seine heutige Größe von 3,71ha vergrößert worden.

    Als 1976 die Uni gegründet wurde, ging der Garten an die Uni-Oldenburg über. 1985 entstand der Standort Wechloy der Universität Oldenburg mit einem Biologie-Fachbereich. Die Verantwortlichkeit für den Garten wurde daraufhin an die Uni-Wechloy übergeben. Ein zweiter Garten mit etwa 1,5ha wurde im Küpkersweg angelegt und wird verwendet für die Anzucht von Pflanzen. Diese Pflanzen werden zum Teil in den Botanischen Garten überführt oder zum Beispiel für Ausbildungszwecke benutzt.

    1999 wurde das Sukkulentenhaus gebaut und 2006 wurde das Tropenhaus eröffnet.

    2007 feierte der botanische Garten seinen 125. Geburtstag. Der Garten erhielt seltene Geschenke, die heute dort auch ausgestellt werden. Zum einen handelt es sich hierbei um einen versteinerten Baum, dessen Alter auf ca. 15-20 Millionen Jahre geschätzt wird. Dieser wurde im Braunkohleabbau gefunden worden und ist nicht komplett versteinert, weshalb er auch irgendwann verwittern wird. Das andere Geschenk ist ein Exemplar von Bolemi Nobilis, ein kleiner Baum, von dem man geglaubt hat, dass er bereits seit ca. 65 Millionen Jahren ausgestorben ist. In den 90er Jahren wurde er im Australischen Nationalpark wieder entdeckt. Die Nachzüchtung gelang, daher kann man den Baum inzwischen wieder kaufen.

    freilaufender Pfau im Botanischen Garten OldenburgAktuell (Stand Juni 2008) in Plaung / Bau ist die sogenannte Grüne Schule. Diese soll für Lehrer und Schüler eine praktische Lehreinrichtung sein, mit der praktische Erfahrungen gesammelt werden können.

    Es gibt auch einige Tiergehege. Dies sind vorwiegend Vögel, aber auch Schildkröten und Fische können beobachtet werden. Attraktion sind die beiden freilaufenden Pfaue, ein Männchen und ein Weibchen.

    Der Botanische Garten enthält heute etwa 4000 Arten und ist eingeteilt in geographische Themengebiete. Diese werden im Folgenden kurz beschrieben. Den ganzen Beitrag lesen »

    You seem to be using an unsafe, outdated browser. Click here to install the world's fastest and safest browser for free! X