DAS ist PHP

Das ist PHP!

Wieso PHP?

  • PHPs Funktionen gegen XSS und SQL-Injektionen sind nicht gut organisiert und in Tutorials werden sie nicht/kaum erwähnt. Erst fortgeschrittene Programmierer werden auf die Fehlerquellen aufmerksam und bauen Barrikaden. Die meisten Seiten werden jedoch im Bekanntenkreis programmiert und deshalb sind die meisten PHP-Programmierer nur Anfänger. Bei python stehen Bibliotheken zur Verfügung, die man kennen lernen muss und man damit auf die Problematik aufmerksam gemacht wird
  • PHPs Funktionen gegen XSS und SQL-Injektionen sind schlecht dokumentiert (Welche Zeichen werden konvertiert? Auf jeden Fall nicht alle Entitäten, wie angeschrieben…). Außerdem gibt es erst ab PHP6 UTF-8 Support. Die Funktion htmlspecialchars() funktioniert auch bei UTF-8, jedoch konvertiert sie nur die builtin-Entitäten (was ich nicht immer brauche)

Leider finde ich das Datum nicht mehr als ich Injektionen aus meinen Skripten verabschiedete… ist aber schon eine Weile her 😉

In diesem Sinne: A happy debugged year! 🙂

DAS ist PHP

proj tom_bathhouse

Ein Badehaus hat 1000 Spinde. Der erste Gast geht durch die Garderobe und schließt die Türe von allen Spinden. Der zweite Gast geht durch und ändert (hier: öffnet) den Zustand jeder zweiten Türe. Der dritte Gast geht durch und ändert den Zustand jeder dritten Türe… der tausendste Gast ändert den Zustand der letzten Türe.
Frage: Welche System steckt hinter den geöffneten Türen?

Thanks to the math geek from ToM 😉

#!/usr/bin/env python
# -*- coding: utf-8 -*-

limit = 1001

# True = the locker is open
lockers = [True] * limit

def bprint(liste):
    ''' Like pprint, but more beautiful '''
    print '{'
    a = -1
    for i in liste:
        a += 1
        if a != 0:
            print ' %s : %s ' % (a, liste[a])
    print '}'

# foreach person
for a in xrange(1, limit):
    # foreach locker
    for b in xrange(1, limit):
        if b % a == 0:
            lockers[b] = not lockers[b]

bprint(lockers)
proj tom_bathhouse

Ubuntu Werte

Warum ist ubuntu für mich wichtig?

  1. Ubuntu ist nicht Windows (man kann selbst steuern!)
  2. Ubuntu ist Linux (OpenSource, etc.)
  3. Ubuntu basiert auf Debian (mit dem ich schon ein bisschen vertraut bin)
  4. Ubuntu hat eine Konsole ( 🙂 )
  5. Ubuntu ist anpassungsfähig (zsh-lover 🙂 )
  6. Mit Ubuntu kann ich gut arbeiten (die meisten Programme funktionieren benutzerfreundlich und korrekt)

Mit Ubuntu – denke ich – kann ich mir eine gute Basis basteln, um Linux kennen zu lernen. Ubuntu war für mich ein Strom-Mitschwimmen. Aber dadurch habe ich Zugang zu passenden Dokumentation/Tutorials auf Deutsch (mit Englisch ist leider alles etwas mühsamer 🙁 ). Ich denke und hoffe nach einer gewissen Zeit kann ich Ubuntu aufgeben und finde mich auch bei anderen Distributionen zurecht. Dann kann ich Ubuntu mit anderen vergleichen und wer weiß, bei welcher Distribution ich dann bleibe?
Erinnert mich an die Situation mit den Programmiersprachen: Zuerst PHP, dann verschiedene Sprachen angeschaut und bei python geblieben

via Dirk

Ubuntu Werte

Jahresrückschau

Nicht vergessen! 25C3 findet gerade statt

Da mir langsam die Beiträge ausgehen bzw. die Zeit in etwas anderes als das Bloggen fließt, wird es Zeit für eine kleine Rückschau, wie sie so gerne gemacht wird um diese Zeit.

Also die Unibesuche waren letztes Schuljahr wirklich genial. Waren sehr interessant für meine neugierige Nase. Aber untauglich darf ich bei der Musterung nicht sein, da ich noch einiges vor der Uni zu erledigen habe. Ich erwarte nicht, dass ich auf der Uni viel Zeit für python & Programmieren im Allgemeinen haben werde. Deshalb muss das noch unbedingt vorher geschehen. Außerdem: Auch wenn es nur ein paar Kröten sind, so möchte ich sie mir für das Studium sparen. However…

Seit Februar bin ich bei python und LaTeX voll dabei, wobei python *rocks* und LaTeX *sucks*. Coole Vorträge hörte ich am BarCamp, am LinuxTag und beim ToM.

Die Informatiktage waren echt eine coole Initiative von mir. Konnte in wenig Zeit viel Wissen sammeln. Hätte ich wieder ein paar Tage richtig “frei”, würde ich sofort die Themen für meine Informatiktage (Liste schon seit letzten Informatiktagen laufend erweitert) abarbeiten. Aber vorrangig stehen der Abschluss von ein paar Projekten und die Matura. Aber wirklich gute Idee damals 🙂

Ein paar Weltanschauungsänderungen gibt es bei mir auch. UTF-8 statt ISO-8859-1, HTML statt XHTML, möglichst wenig Daten speichern und der Projektaufwand wird bei mir immer ausschlaggebender für den Start eines Projekts. Letztendlich habe ich etwas tiefer in die Welt von Linux geschaut und auch mein Verhältnis zu Linux hat sich dadurch verändert. Der Umstieg mit ubuntu war mit Problemen behaftet, die ich erwartete.

Wirklich cool war unsere Organisation des Volleyballturniers und das FCE. War wirklich cool solche stressige Sachen auf mich zu nehmen. Gegenüber dem heurigen Jahr war die Schule konstant anstrengend, während es in der 8. Klasse notwendig jederzeit der Schule die volle Aufmerksamkeit teilen zu können. Letztendlich habe ich mich sehr über den Abschluss der 7. Klasse gefreut 🙂

Paris wird wohl meine letzte größere Reise für einen langen Zeitraum bleiben. Bis zur Uni besteht kein allzu großes Interesses irgendwohin zu fahren. Außer vielleicht ein bisschen meine mangelnden Sprachkenntnisse erweitern. Finden sich noch ein paar No-X-Jam-Leute aus der Klasse, bin ich dabei 🙂

Sowohl in der virtuellen wie auch realen Welt gibt es einige konzeptionelle Fehler, die ich am liebsten sofort bereinigen würde. Aber das ist leider nicht so einfach. Auf jeden Fall halte ich die aufgezählten Sachen für sehr gesellschaftskritisch. Im April und Mai 2008 konnte ich wirklich gute philosophische Theorien / Fragen erstellen.

Den jugendlichen Elan habe ich zum Glück noch weiterhin 😉

Die Projekte profile (definieren meiner Online-Identität) und Zentralisierung (alles von mir nachhaltig und zentral verfügbar machen) stehen noch aus.

BRGblog und MyBlog waren die zwei Wegbegleiter-Projekte für mich. Als Dank schenkte ich MyBlog eine neue Domain und dem BRGblog eine neue, eifrige Mitarbeiterin. Ein wirklich coole Aktion in MyBlog war die Scrubs-Hommage im Juli 2008.

In der Technikwelt hat Google gegenüber ein paar Konkurrenten gewonnen, Yahoo nicht übernommen, Chrome veröffentlicht und Firefox ist mich nicht losgeworden.

Gegen Ende des Jahres musste ich auch wesentlich mehr Bücher lesen, was ich unter dem Jahr meist hinter mir lasse. Im Internet und Dokumentationen lese ich genug 😉

In den Ferien brachte ich mein Programm nicht durch und die Ferien waren recht inhaltslos. Trotz meiner Kritik kann ich stolz auf proj stadtchor sein 🙂

Vorsätze? Matura schaffen, Informatik, python & C und HTML5. In Informatik fehlen mir noch ein paar Grundlagen, python muss ich noch vertiefen und Interesse an C habe ich entwickelt. Wie sich die Webstandards weiterentwickeln werden, steht noch in den Sternen. Die Matura ist natürlich mit Emotionen wie Angst begleitet. Bis dahin gibt es aber noch so viel zu lernen. Darf ich vorerst gar nicht daran denken 😉

Jahresrückschau

Frohe Weihnachten

Heute war der letzte Schultag. Aber Toja hat recht: Der Unterschied liegt nur in der Tatsache nicht mehr in diesem Jahr 2008 das Schulgebäude betreten zu müssen. In Bezug zur Schule ist noch zu erwähnen, dass ich die bisher katastrophalste Schulzeit hinter mir habe. Ich konnte so gut gar nichts produktiv lernen, bei den Projekten konnte ich kein einziges volles Wochenende investieren und neben haben sich viele Sachen aufschieben müssen. Bei einem Webprojekt trete ich für dessen Abschaltung ein. Allerdings habe ich keine Erwartungen, dass sich das bis zur Matura verbessern wird. Am meisten nervt mich an der Schule momentan die aufgezwungene Arbeiten von Lehrern, die mich nicht wirklich weiterbilden. Naja… in den (langen) Winterferien kann ich wenigstens ausschlafen und verbringe keine 20-Stunden-Tage mit Schule und Lernen bzw. 11-Stunden-Tage in der Schule. Schaffen muss/will ich trotzdem viel:

  • BRGblog (Texte, Spezifikation, Beiträge)
  • Mathematik (Trigonometrie & Vektoren, Spezialgebiet Komplexe Zahlen)
  • Schulaufgaben (ME-Aufsatz “Kleine Nachtmusik”, BIO Referat, ME PDF Choral, H Hitler, H Hungernot)
  • Transkription von Kind of Blue
  • Unterrichtsstoff-Liste für jedes Fach und proj_specification
  • Fahrrad und Saxophon Generalüberholung

Nebenbei könnte ich mal wieder CCC-Podcasts hören und Artikel über Apache & HTML5 lesen. Den vollständige Beitrag von Udo Vetter “Sie haben das Recht zu schweigen” habe ich auch noch nicht gesehen. Und zusätzlich strebe ich noch “Textverarbeitung mit dem vi” an. Jaja, “Ferien”…

Frohe Weihnachten

Christbäume und prog_langs

>>> print "n".join([(10-a)*' ' + 'x'*2*a + (10-a)*' ' for a in range(10)+[1,1]])

     
         xx         
        xxxx        
       xxxxxx       
      xxxxxxxx      
     xxxxxxxxxx     
    xxxxxxxxxxxx    
   xxxxxxxxxxxxxx   
  xxxxxxxxxxxxxxxx  
 xxxxxxxxxxxxxxxxxx 
         xx         
         xx         
>>> 

<?php for($i=1;$i<12; $i++){$a=($i%10==0)?1:$i%10; echo str_repeat(' ',10-$a).str_repeat('x',$a*2).str_repeat(' ',10-$a)."n";}?>

         xx         
        xxxx        
       xxxxxx       
      xxxxxxxx      
     xxxxxxxxxx     
    xxxxxxxxxxxx    
   xxxxxxxxxxxxxx   
  xxxxxxxxxxxxxxxx  
 xxxxxxxxxxxxxxxxxx 
         xx         
         xx         

Schöner haben es diese Typen gemacht:
via entwicklergolf

Christbäume und prog_langs