Retro-Gaming: Command and Conquer – Red Alert unter DOSBox und openSUSE spielen

Frohe Weihnachten!

Am 2. Weihnachtsfeiertag ist etwas Ruhe angesagt und mich hat das Retro-Fieber gepackt.

Dieser Artikel soll beschreiben wie ich “Command and Conquer – Red Alert” unter DOSBox zum Laufen gebracht habe, welches von Electronic Arts im Rahmen einer Werbeaktion zum Download freigegeben wurde.

Schritt 1: Download

Command and Conquer – Red Alert kann man von der entsprechenden Downloadseite von Chip herunterladen. Obwohl der Downloadtitel auf Deutsch aufgeführt ist ist das eigentliche Spiel jedoch auf Englisch

Schritt 2: Entpacken und Vorbereiten des DOS-Verzeichnis

unzip ~/Downloads/Command_and_Conquer_Alarmstufe_Rot.zipmkdir ~/CNCRA
mv ~/RedAlert1_AlliedDisc/RedAlert1_AlliedDisc/CD1_ALLIED_DISC.ISO ~/CNCRA
mv ~/RedAlert1_SovietDisc/RedAlert1_SovietDisc/CD2_SOVIET_DISC.ISO ~/CNCRA/

Schritt 3: DOSBox installieren und Starten

Unter openSUSE erfolgt die Installation von DOSBox wie folgt

su -c “zypper install dosbox”

Nach Eingabe des root-Passworts sollte DOSBox nun installiert und über das Startmenü des jeweiligen Desktops aufrufbar sein.

Wir starten DOSBox und geben folgende DOS-Befehle in der DOSBox ein:

mount C /home/mwagner/CNCRA
imgmount D /home/mwagner/CNCRA/CD1_ALLIED_DISC.ISO -t iso

Hinweis: DOSBox verwendet ein amerikanisches Tastaturlayout.

  • Den Slash “/” erreicht ihr auf der deutschen Tastatur mit der Minus-Taste.
  • Den Underscore erreicht ihr auf der deutschen Tastatur mit “Shift-ß”
  • Den Backslash “” erreicht ihr auf der deutschen Tastatur mit “|” wo auch “<” oder “>” abgebildet sind.

D:
SETUP

Schritt 4

Sobald die Installationsroutine durchgelaufen ist kann man mit

RA

das Spiel starten.

Neues Leben für MacMini – Introducing “oldracer”

Hin und wieder halte ich mich auch auf der Webseite macuser.de auf und diskutiere im Forum mit.

Die Webseite verfügt über einen Kleinanzeigenteil wo man gebrauchte Mac-Rechner, iPads, iPhones aber auch Software und Ersatzteile kaufen und verkaufen kann.

2017 kaufte ich dort einen MacMini-Rechner aus dem Jahre 2007. Der Rechner kam mit einer vorinstallierten Version von MacOS X 10.7 “Lion” wobei ich aber die Zugangsdaten für den Rechner nicht hatte und mir so bei Apple eine Snow-Leopard-DVD und einen Freischaltcode für “Lion” besorgte.

Am Wochenende überkam mich das Bastelfieber und ich baute ein “Solid State Drive (SSD)” in den Rechner ein. Eine Anleitung hierfür bekam ich aus diesem YouTube-Video.

Ich bin begeistert von diesem Gerät: Der MacMini ist sehr leise und nimmt wenig Platz auf dem Schreibtisch ein.

Ebenso finde ich es beachtlich, dass ich durch den Einbau der SSD den Festplattenspeicher von ursprünglich 80 Gigabyte Speicherplatz auf 480 Gigabyte erhöhen konnte. Dies stellt gegenüber der ursprünglichen Konfiguration eine Versechsfachung des Festplattenplatzes dar. Ebenso geschieht das Starten von Programmen wesentlich schneller. Ich gab dem Hostnamen daher einen passenden Namen: oldracer.

Da die SSD aus meinem Laptop stammte, war noch eine openSUSE Tumbleweed Installation vorhanden, die ohne weiteres Zutun problemlos bootete.

Angeblich kann man auch den Prozessor des Macs austauschen. Dies hebe ich mir aber für eine weitere Bastelaktion auf.

Finanzielle Freiheit mit Skrooge – Neue Übersetzungen

Da das mit dem KDE-Übersetzerteam so gut geklappt hat, habe ich mich heute an die Übersetzung einer Personal Finance Anwendung namens “Skrooge” gemacht, die ebenfalls KDE-Software ist.

An unserer Hochschule Harz hat sich ebenso eine kleine “Selbsthilfegruppe” dynamischer Jungunternehmer namens “HarzHustle” gegründet, wo ich auch Mitglied bin. Diese Gruppe träumt von der finanziellen Freiheit und die Übersetzungen seien diesmal euch gewidmet. Möge euch Skrooge in einer überarbeiteten deutschen Fassung zu Nutze sein…

In den Quelltexten ist mir aufgefallen, dass die Autoren einige grammatikalische Fehler gemacht haben, die ich über den Bugzilla gemeldet habe.

Beispielsweise wird der englischen Zeitform “Simple Present” (Gegenwart) in der dritten Person ein -s angehängt, was in Schulen unter der Eselsbrücke “He, she, it – Das -s muss mit” läuft.

Leider ist mir während meiner Nachhilfetätigkeit aufgefallen, dass manche Schüler es dabei teils auch übertreiben und beispielsweise auch so Konstruktionen wie “He dids” verwenden. Diese Eselsbrücke gilt also nur im “Simple Present” und da sollte man auch wissen wann es jeweils angewendet wird, beispielsweise bei “General truths” wie “The sun rises in the East.”

Einer meiner Bugreports wurde jedenfalls gleich aufgegriffen und ein umgehendes Commit im Quelltext gemacht. Ein anderer Bug, den ich gemeldet habe, ist dieser hier wo sich ein zusätzliches “-t” eingeschlichen hat. Dürfte aber auch schnell behoben werden.

Insgesamt würden heute 127 Zeichenketten (Strings) für Skrooge übersetzt. Das Sprachpaket ist noch nicht vollständig aber es ist (meines Erachtens) schon ein Schritt in die richtige Richtung.

When everything else fails… Go upstream!

Am Wochenende hatte ich ein wenig Zeit um mal wieder einige Übersetzungen beizutragen. Einiges ging an die Ubuntu Distribution wobei die Übersetzungen sehr zeitnah angenommen wurden und mein Karmapunktestand auf Launchpad wieder ziemlich anstieg.

Ansonsten gingen noch einige Übersetzungen an das KDE-Projekt wobei hier insbesondere die deutschen Sprachpakete von Kgoldrunner und KNights vervollständigt wurden. KNights sei insbesondere Andreas gewidmet, der ein leidenschaftlicher Schachspieler ist und sich im Verein regelmäßige Brettspielschlachten im “Spiel der Könige” lieferte.

Ich war sehr beeindruckt, wie das KDE-Projekt die einzelnen Dienste über eine zentrale LDAP-Struktur verwaltet, so dass man für KDE-Forum, Phabricator etc. nur einen Login erstellen muss.

Durch die KDE-Mailingliste wusste ich bereits, dass Übersetzungen bereits einem “Review” (Überprüfung) unterzogen wurden. Einige Zeit lang hatte ich einfach die .po-Dateien in Lokalize übersetzt und die vervollständigten Dateien über die Mailingliste eingereicht.

Mittlerweile ist es so, dass für den Reviewprozess sogenannte diffs in ein System namens Phabricator eingereicht werden müssen. Dank Jörg aus der WOBLUG wurden einige Hintergründe erläutert und so gelang es mir doch tatsächlich einen solchen .diff zu erzeugen. Hier wünsche ich der WOBLUG auf jeden Fall viel Spaß diesen Donnerstag bei ihrer kommenden Veranstaltung.

Leider fand ich mich im Verzeichnisbaum des KDE-Projekts nicht wirklich zurecht und so übernahm Burkhard das Einchecken mit der Aufforderung, mehr zu schicken. Dem werde ich gerne nach Möglichkeit nachkommen da durch die KDE-Übersetzungen alle Distributionen und nicht nur mein stiller Favorit “OpenMandriva” profitiert.

So when everything fails: Go upstream!

Erste Gehversuche mit GNU R und Vergleich mit SPSS

Hier an der Hochschule Harz bereite ich für das kommende Semester mein Forschungsprojekt vor, welches sich um Business Intelligence drehen wird. Bereits letztes Semester habe ich die Veranstaltung “Statistische Ansätze” besuchen dürfen, die mir einen Einblick in das Programm “SPSS” gegeben hat.

Nun wurde ich im Rahmen des Forschungsprojekts auf GNU R hingewiesen, welches freie Software ist, und einen sehr mächtigen Eindruck macht. Die ersten Einblicke konnte ich über ein Tutorial des heise-Verlags sammeln.

Was soll ich sagen: GNU R scheint ein echtes “Powerhouse” zu  sein, jedoch wird man hier wahrscheinlich trotzdem SPSS verwenden, da es komfortabler zu bedienen ist. Dies soll aber nicht heißen, dass sich ein Blick auf GNU R nicht lohnt – im Gegenteil! Gerade im akademischen Umfeld halte ich die Nutzung freier Software für sehr wichtig. 

In der AppDB für Lieblingsanwendungen abstimmen

Eine weitgehend unbekannte Tatsache bei der Nutzung von wine und CrossOver ist, dass man angeben kann, auf welche Applikationen und Spiele sich die wine-Entwickler fokussieren soll.

Und das geht im Falle von wine in der AppDB wie folgt:

  • Ihr benötigt ein Konto (Account) für die AppDB und loggt euch mit Benutzername und Passwort ein.
  • Über die Suchfunktion sucht ihr die von euch gewünschte Anwendung heraus und navigiert zu der entsprechenden Seite.
  •  Im Falle von StarCraft II sieht die Projektseite wie oben abgebildet aus. 
  • Auf der rechten Seite unter “Application Details” findet ihr den Button “Vote” worüber ihr bis zu drei Stimmen auf diese Anwendung oder das entsprechende Spiel kumulieren könnt. 
  • Es erfolgt keine Aufforderung, nach einer gewissen Zeit, die Stimmen neu zu verteilen. Dies ist insbesondere schade, da Spiele wie Counterstrike Source mittlerweile auch für Linux und Macintosh zu haben sind und manche Teilnehmer ihre Wahl und Verteilung ihrer Stimmen vielleicht doch nochmals überdenken und neu verteilen.
  • Derzeit ist “Final Fantasy XI” das mit Abstand meistgewählte Spiel. Persönlich kenne ich aber niemanden, der diesen Titel spielt oder gespielt hat.

Für welche Spiele stimmt ihr ab oder habt ihr abgestimmt? Welche Programme unter wine wären euch wichtig? Bitte lasst es mich in den Kommentaren wissen…

Steuererklärung mit Aldi Steuer 2017 unter wine 3.0-rc2

Hallo zusammen,

bislang mache ich meine Steuererklärung über das ELSTER-Onlineportal, welches im Gegensatz zu einer Steuersoftware, jedoch keinen geführten Dialog hat.

Sowohl Steuerjahr und auch gleichzeitig das Kalenderjahr nähern sich nun dem Ende und die Discounter machen sich daran, vergünstigte Steuersoftware anzubieten.

Steuern ist für viele zwar ein dröges Thema und der alljährliche Akt des Formularausfüllens kann durchaus nervig werden. Hinzu kam in den letzten Jahren auch noch das Testen unter wine und im ubuntuusers.de Forum werden wahrscheinlich auch weitere Fragen zum Thema Steuern unter Linux aufschlagen.

Vorgestern wurde ich auf ein Posting im ubuntuusers.de Forum aufmerksam, in dem Probleme bei der Eingabe einer Seriennummer der Aldi Software Steuer 2017 gemeldet wurden. Ich erklärte mich bereit, diesen Sachverhalt angesichts der Tatsache, dass wine vor dem 3.0 Release steht, zu prüfen.

Meine Hochschule, die Hochschule Harz, legt großen Wert auf Nachhaltigkeit und ich überlegte daher die Software als Download zu erwerben um auf die Verpackung zu verzichten.

Jedoch ist Aldi halt nicht softwareload.de und so musste ich mich letztendlich doch aufs Fahrrad schwingen und zu Aldi Brome (Aldi Nord) radeln. Dort fand ich nach einer kurzen Suche im Mittelgang das begehrte Objekt und gab die 4,99 Euro dann auch aus.

Insgesamt gelang es mir die Software “Steuer 2017” dann unter wine 3.0-rc2 unter openSUSE “Tumbleweed” zu installieren und ich verwendete dafür ein frisches Prefix. Mit der Eingabe seiner Seriennummer (findet man auf der Rückseite des Hefts in der DVD-Box) auf der Seite www.steuer-support.de ein Archiv für die Installation auswählen. Optische Laufwerke werden durch die wachsende Kapazität von USB-Medien ja immer seltener.

Sowohl über CD-ROM als auch im Downloadpaket befinden sich die nötigen Microsoft-Bibliotheken/Runtimes, die für die Ausführung des Programms nötig sind.  Den Installationsassistent konnte ich in einem frischen Prefix in beiden Fällen nach Eingabe der Seriennummer einwandfrei durchklicken.

Die Webseite steuer-support.de benötigt man zwingend um Updates in Form von .exe-Dateien zu
beziehen, die man dann über die bestehende Installation von “Steuer
2017” installiert.

Wichtige Anmerkung zu den Updates: Bitte achtet darauf, dass ihr euch dazu im entsprechenden wine-Prefix befindet, sprich die Umgebungsvariable WINEPREFIX muss halt auch auf den entsprechenden Pfad des Prefix zeigen.

Worauf sie jeweils zeigt könnt ihr mit “echo $WINEPREFIX” prüfen.

Anbei auch ein Auszug meinem history-file unter openSUSE “Tumbleweed” mit wine3.0-rc3. Es wird davon ausgegangen, dass ihr die entsprechenden Installationsdateien im Ordner Downloads eures Homedirectory habt.

mkdir -p /home/mwagner/.Wineapps/Steuer2017
WINEPREFIX=/home/mwagner/.Wineapps/Steuer2017/
wine /run/media/mwagner/Steuer2017/start.exe echo $WINEPREFIXcd Downloads/
wine Steuer2017.exe
wine steuersoftware2018update.exe

Insgesamt sieht “Steuer 2017” von Aldi ganz vielversprechend aus und ich sehe der kommenden elektronischen Steuererklärung ganz positiv entgegen, dass ich jetzt auch mal einen elektronisch geführten Dialog führen kann statt “nur” das Formular auszufüllen.

Insgesamt überlege ich auch die Anwendung in der AppDB von wine einzureichen und den Maintainer für diese Version zu machen.

CrossOver 17 erschienen

Hallo zusammen,

da ich selbst an der Vervollständigung des deutschen Sprachpakets von CrossOver 17 mitgewirkt habe, freue ich mich mitteilen zu können, dass nun eine neue Version von CrossOver ab heute zu haben ist.

Highlights aus dem Newsletter:

  • CrossOver 17 supports Microsoft Office 2016: the latest and greatest Microsoft Office suite. You can install Office 2016 Home and Office 2016 Business from your Office 365 account and use the full featured versions of these products.
  • CrossOver 17 also supports Quicken 2017 for your home financial needs.
  • On Linux, CrossOver 17 will run the popular game League of Legends.
  • You will benefit from a full upgrade of our Wine compatibility layer, giving CrossOver 17 thousands of improvements in our core technology over our previous version.
  • CrossOver 17 also brings functional improvements to Microsoft Office 2010 and Microsoft Office 2013, and many of your other favorite Windows applications.

Als Einführungsangebot bietet Codeweavers mit dem Couponcode CX1745 satte 45% Rabatt auf das 1-Jahr-Abo.

Bericht von der odoo-Präsentation im Novotel, Hannover

Ich hatte ja in diesem Blog angekündigt, dass ich am Freitag den 20. Januar 2017 eine odoo-Präsentation im Novotel, Hannover besucht habe. Hier folgt ein kurzer Bericht über die Veranstaltung.

Aufmerksam wurde ich durch die Gruppe „ERP auf Basis freier Software“ auf Xing, die mein Hauptgrund war, überhaupt mich wieder bei Xing zu registrieren.
Ausrichter der Veranstaltung waren odoo, die Firma ecoservice, IFE GmbH und Hucke Media. Die beiden letztgenannten Firmen sind sogar so aktiv in der odoo-Szene, dass sie 2014 seitens odoo die Auszeichnung „EMEA Partner of the Year 2014“ verliehen bekommen haben.
Ich entschloss mich, früh anzureisen und konnte vorab noch mit den beiden odoo-Repräsentanten ein paar Worte wechseln. Insbesondere ergab sich die seltene Möglichkeit, in Niedersachsen mal wieder Französisch zu sprechen. Ich erfuhr dabei, dass die beiden Repräsentatien Nicholas (Channel Account Manager) und Charles demnächst in Lausanne und anschließend in Mailand sprechen werden. Für die anschließenden Präsentationen wünsche ich natürlich von dieser Stelle aus „Bon Courage“.
Ich sicherte mir gleich einen Platz in der ersten Reihe und erfuhr, dass sich etwa 90 Leute zu der Veranstaltung angemeldet hatten. Durch ein Gespräch mit meinem Stuhlnachbarn erfuhr ich, dass dieser sogar aus Berlin nach Hannover angereist war.
Nach und nach füllte sich der Saal und es mussten noch einige zusätzliche Stühle heran geschafft werden. Dennoch ging es pünktlich los und man einigte sich darauf, dass Nicholas und Charles als erstes Sprechen und die drei odoo-Partner dann später zu Wort kommen.
Der odoo-Vortrag wurde in vier Bereiche unterteilt, die nun durchgegangen werden. Dank meines mitgebrachten Laptops konnte ich mir zahlreiche Notizen machen.

I. About odoo / Über odoo

Die belgische Firma odoo wurde vorgestellt und die Zuhörer erfuhren, dass die Wurzeln dieses Unternehmens bereits auf die Jahre 2002-2005 zurück gehen. Man sieht also, dass man es mit einer Firma zu tun hat, die schon seit über 10 Jahren im Geschäft ist.
Es sei anzumerken, dass sich der Name des Produkts im Laufe der Zeit mehrmals geändert hat: Hiess das ERP-System ursprünglich noch Tiny ERP (tiny = winzig) wandelte sich der Name in OpenERP und anschließend in den aktuellen Namen odoo.
Odoo hat zwei Büros in Belgien, eins für den Vertrieb sowie eins für Entwicklung und Administration. Weiterhin ist man in den USA aktiv und verfügt über Entwicklerressourcen in Indien.
Ein besonderes Augenmerk wird auf das Partnergeschäft gelegt, die lokal vor Ort agieren, zertifiziert sind und letztendlich die Lösung beim Kunden implementieren.
Einige weitere Key-facts, die ich mir von der Folie abgeschrieben habe:
  • 32 languages
  • 308 employees
  • 700 partners
  • 1000 installations
  • 2 million users

II Odoo Value Proposition

Im Anschluss wird eine Matrix bzw. ein Koordinatensystem gezeigt, welche an der einen Achse einmal mit „product scope“ und auf der anderen „flexibility“ aufzeigt. Verschiedene ERP-Systeme sind dort gelistet, wobei odoo ganz alleine rechts oben (also stark auf beiden Achsen) steht. Die Folie ist auch auf der odoo-Webseite zu sehen.
Product scope bezieht sich nach Aussagen odoos auf Aspekte wie beispielsweise: Wie viele Funktionen hat das Produkt, bietet es ein kleines Set von Features oder einen Großen Umfang von Merkmalen. Hier wurde beispielsweise das Produkt Salesforce.com angesprochen, welches meines Wissens nach im CRM Bereich sehr stark ist, aber sonst relativ wenig Merkmale hat.
Die Achse „flexibility“ bezieht sich auf Themen wie beispielsweise: Ist die Software leicht zu nutzen? Ist sie benutzerfreundlich?
Die Kernaussage ist jedoch, dass odoo beide Aspekte abdecken möchte.
Weiterhin wurde angesprochen, dass moderne ERPs buchhaltungszentriert sind (Vertrieb, Einkauf, Eingehende Waren, Lagerhaltung, Lieferung) aber die Anforderungen der heutigen Unternehmen sich nicht ausschließlich darauf beziehen: Vielmehr sei es wichtig, dass man eine Webseite oder einen Shop zuerst hat, da man als Firma bekannt werden und auf sich aufmerksam machen möchte. Da gilt es letztendlich darum, etwas zu zeigen.

In Folge wird die Integration von Front- und Backend angesprochen: Als Beispiel wurde eine Bestellung, die über die Webseite herein kommt genommen und dass eine Rechnung daraus erstellt wird. Gleichzeitig wird ein Fokus auf Benutzerfreundlichkeit gelegt, das das Arbeiten angenehm macht, während tradionelle ERPs eher für Reportingaufgaben und das Management ausgelegt sind. Odoo möchte gleichzeitig die Verwaltung einer Firma bei gleichzeitiger Benutzerfreundlichkeit realisieren.

III Odoo 10 Demo and Overview (Odoo 10 Demo und Überblick)

odoo wird als vollständige Weblösung angeboten, die über den Browser verwaltet wird. Im Vorfeld des Vortrages hatte ich nach dem alten GTK-Client von TinyERP gefragt, ob es diesen noch gibt. – Den gibt es nicht mehr.
In der Demonstration sind einige Module installiert wobei man nicht alle Module installiert haben muss. Auch der Start mit einem Modul (beispielsweise CRM) ist möglich. Ein Application Store wird angeboten, wo man per Klick einzelne Module nachrüsten kann. Dieses Modul wird dann auch dem zentralen Panel hinzugefügt.
Der Vertrieb ist rund um den Kunden organisiert und das entsprechende Modul kann dann Fragen beantworten wie beispielsweise: Welche Treffen hatte ich? Anschließend werden diese Leads dann in der Sales Pipeline gebündelt.
Es wird ebenso ein dynamisches Suchfeld vorgestellt. Somit ist es möglich, nach der Angebotsfunktion zu suchen und diese Schnellzugriffe wurden hinzugefügt um die Arbeit mit dem System zu vereinfachen.
Dies sei nötig um komplexe Themen leichter verständlich zu machen: Als Beispiel nennt man hier die Thematik des Projektmanagements.
Es wird anschließend ein Angebot erstellt, über die Schnellsuche die Funktion lokalisiert und darauf zugegriffen. Anstelle Emails hin und her zu schicken, geht odoo auch hier einen eigenen Weg. Das Angebot wird online hinterlegt und kann auch online unterschrieben werden. Dies soll die Art unserer Geschäftstätigkeiten ändern. Natürlich wird dies auch alles in der Datenbank gespeichert und man kann über die Buchhaltung prüfen, wie der Status der Rechnung ist.
Brandneu ist die mobile Anwendung um Zugriff von überall zu ermöglichen, da viele Tätigkeiten nun auch über große Distanzen erledigt werden. Odoo meint, dass die Mitarbeiter teils schon von ihren Autos aus Zugriff auf Daten der Firma brauchen. Dazu werden multi-accounts, smart notifications und native Widgets geboten.
Ein Video, welches auch auf YouTube zu sehen ist, stellt den Website Builder und die Integration in eCommerce vor.
Ebenso wird die Helpdeskanwendung vorgeführt wobei hier insbesondere die Konfigurationsmöglichkeiten verfeinert wurden. Ein Dashboard wurde integriert, ebenso ein Konfigurationsschirm um die Anwendung an sich zu konfigurieren. Ein Emailkonto um Mail zu empfangen wird mit dem Ticketsystem verknüpft.
Eine direkte Chatfunktion (auf der Webseite befindet sich rechts unten eine Funktion, dass man mit einem Mitarbeiter chatten kann) ist mit dem System ebenfalls verbunden.
Die Erstellung von eigenen Formularen und SSL-Policies sowie die Definition von Service Level Agreements sind ebenfalls möglich. Die Unternehmensleitung kann somit überprüfen, ob Servicetickets zeitnah abgearbeitet wurden und natürlich sind auch Anfragen nach der Zufriedenheit des Kunden mit dem Support möglich. (Sind Sie mit dieser Antwort zufrieden?)
Als nächtes geht es um die Auswertung von Belegen (Expense Management). Belege (Hotelrechnungen, Taxiquittungen) etc. können direkt mobil hochgeladen werden und werden dem entsprechenden Datensatz angehängt. Das Resultat ist eine enorme Erleichterung für die Buchhaltung und die Rückzahlung von Ausgaben geschieht wesentlich schneller. Eine Filterung nach Art (Reise, Hotelrechnung etc.) macht das ganze System dann schnell und effizient.
Die odoo-Repräsentanten gehen dann zu dem Aspekt der Fertigung über: Der Slogan „MRP, PLM (Product Lifecycle Management), Quality and Maintenance (Wartung) – Together at last!“ macht dabei Appetit auf mehr.
Im Durchschnitt verwenden Fertigungsbetriebe teils bis zu 10 Anwendungen um ihre Geschäftsprozesse zu verwalten (Quickbooks für Buchhaltung etc.) während odoo alle Aspekte in eine Anwendung komprimiert.
Es wird das Master Production Module vorgestellt: Als Beispiel wählt man zwei Produkte, einen Computer und eine Mouse und erklärt „direct and indirect demand“, die beispielsweise Verkaufsprognosen berücksichtigen. Herstellungsorder können somit direkt geplant werden und in Form von „work orders“ an die einzelnen Arbeitsplätze geschickt werden. Eine Zeiterfassung, die pausiert werden kann, darf da natürlich nicht fehlen.
Die Produktionslinie kann bei einem schweren Fehlen blockiert werden und die Produktionsleitung wird alarmiert. Ebenso kann man bei dem Defekt eines Teils eine Wartungsanfrage stellen. Bezieht man dabei Teile vom Lager werden die Lagerbestände entsrechend angepasst. Ein Journal und Aufzeichungen etc. werden ebenfalls gepflegt.
Präventive Wartung bei Geräten kann ebenso geplant werden, wobei die MTBF (mean time between failure) herangezogen wird.
Eine Oberfläche eines Workflows (In Progress – Approved – Validated) wird vorgestellt.
Weiterhin wurden Innovationen im Qualitäts Management vorgestellt. Eine Prüfung zwischen einzelnen Belegen kann beispielsweise zeitlich mit einer spezifizierten Toleranz geplant werden. Beispielsweise kann ein gefertigter Artikel so definiert werden, dass es als unverkäuflich gilt sofern die Qualität noch nicht überprüft wurde.
Im Anschluss ging man auf Odoo Studio ein. Von den Referenten wurde angemerkt “Our CTO gave us some superpowers.” Nun ist es auch ohne Entwicklungskenntnisse möglich, ein Feld beispielsweise zu Sales Orders (z.B. Kundenreferenz) einem Formular hinzufügen. Ebenso ist es möglich, zu definieren ob es sich um ein Pflichtfeld handelt, welches unter allen Umständen ausgefüllt werden muss. Das Feld kann auch aus den Ansichten entfernt werden. Diese Funktion ist jedoch nicht in der Communityversion sondern erst ab Status Enterprise vorhanden.
Auf dieser Basis ist es somit möglich, eingene Apps in odoo zu erstellen. Insbesondere dieses Merkmal stieß bei den Besuchern auf großes Interesse.

IV Questions and Answers

Falk Neubert von ecoservice, Hannover, der seit 6 Jahren mittlerweile odoo betreut und Partner ist, stellte sein Angebot vor. Dies besteht insbesondere aus der Einführung, Schulung und Entwicklung kundenspezifischer Lösungen sowie Branchenlösungen. Ebenso berät er sehr intensiv über Organisationsentwicklung und den Aufbau von Workflows innerhalb von odoo.
Insbesondere ist hervorzuheben, dass ecoservice selbst eine DATEV-Schnittstelle entwickelt hat, dabei die Version 10 bald erscheinen wird. Den Standort Hannover bereichnete er als “odoo Hauptstadt”.
Wolfram Müller, Geschäftsführer von IDE sowie Herr Passmeier von hucke media stellten sich ebenfalls vor. IFE wurde 1990 gegründet und ist Gold Partner von odoo. Das Team von 40 Personen wurde 2014 als bester Partner von odoo ausgezeichnet. Weltweit hat IFE die meisten Kunden unter allen odoo-Partnern. Einige Kunden sind dabei im Ausland ansässig wobei der größte Kunde um die 1000 User umfasst. Referenzen sind unter anderem Airbus und Metro.
In der Vergangenheit wurde so eine DATEV-XML-Schnittstelle programmiert, die Belege zum Steuerberater übermittelt. Ein starker Fokus liegt auch auf der Beratung zu den 10000 Modulen im odoo-Markt. Entsprechende Videos findet man auf IFE-Webseite und es wurde ein Vergleich von verschiedenen ERP-Systemen in der Computerwoche präsentiert.

Ich selbst nutzte die Frage und Antwort-Stunde zur Frage nach der Implementierung eines Rollenkonzepts in odoo. Dies wurde eindeutig bejaht: Zugriffsrechte seinen nicht nur auf einzelne Module möglich sondern entsprechende “Rules” sind auch auf Datenebene möglich. So ist es beispielsweise möglich, dass ein Verkäufer nur seine eigenen Verkäufe oder Kontakte sehen kann.

Weiterhin kamen aus dem Publikum Fragen zur Implementierung von Multi-Company: Mehrere Firmen mit eigenen Kontenrahmen allerdings mit gemeinsamen Artikelstamm.

Bezüglich der Buchhaltung und DATEV wurde angemerkt, dass odoo eher eine “one size fits all” Lösung ist aber unser deutsches Steuerrecht sehr speziell sei. Mit odoo 11 möchte man stärker die Lokalisierung der Buchhaltung voran treiben.

Weiterhin ist ein Dokumentenmagement in odoo implementiert. Jedem Datenobjekt können Daten angehängt werden, die im Filestore gesichert werden und in eine Datensicherung einbezogen können. Dies sei auch in Verbindung mit agorum möglich, welches wiederum zertifiziert ist.
Zum Thema Point of Sales wurde nach der Zertifizierung für Deutschland gefragt. Dies sei noch derzeit noch nicht vorhanden. Der Hintergrund ist, dass seit Beginn des Jahres 2017 dies bei elektronischen Kassen vorgeschrieben sein. Bei odoo geschieht die Eingabe über die Weboberfläche und die Nachvollziehbarkeit wird durch die Datenbank realisiert. Insbesondere müssen die Daten nachvollziehbar und unveränderbar sein. Das Finanzamt erteile aber selbst keine Zertifikate. Es sei ein ein “Mythos, der durch die Landschaft geistere”.

Ebenso kam die Frage auf, eine Agfeoanlage an der CRM anzubinden. Odoo 10 hat ein Voice over IP-Modul integriert. Zu einer Asterisk-basierten Lösung wurde Cyfon, Hannover angesprochen. Schnittstellen gäbe es aus der Community.

Eine weitere Frage war die Integration mehrerer Googlekalender.

Das Plenum wurde auch auf verschiedene Codestänge aufmerksam gemacht: So sei die OCA (odoo Community Association) in Frankreich und Belgien sehr groß aber die deutsche Community eher klein dazu. Die Enterpriseversion bestünde zu 80% aus der Communityversion. Manche Funktionen seinen aber in der Communityversion abgeschaltet. Die OCA diene ebenso auch sehr zur Qualitätssicherung des Produkt, da es auf die Grundmodule Gewährleistungen der Firma odoo gebe.

Release- und Developmentbranches in Wine und CrossOver

Kürzlich erschien im offiziellen CodeWeavers-Blog eine Erläuterung, wie wine und CrossOver zusammen hängen. Mit der Erlaubnis von Josh DuBois habe ich diesen Artikel übersetzt:

Hier bei CodeWeavers fragen die Kunden oft wie CrossOver hergestellt wird. Wir bekommen Anfragen, die von ziemlich einfach bis extrem technisch reichen. Beteiligte und neugierige Nutzer sind unter den Freuden, dass wir unser Produkt auf einem Open-Source Projekt basieren.

Jetzt wo CrossOver 16.2 erscheint, denke ich, dass es eine gute Zeit ist, darüber zu sprechen wie wir Entwicklungs- und Releasezweige für CrossOver verwalten. Im Spektrum dieser Dinge, die man über Wine sagen könnte, ist dieses Thema nur bedingt technisch. Es ist eine häufige Frage von unseren Benutzern, sowohl in unseren Webforen und in unserem Livesupport-Kanal.

Grundlegend: CrossOvers Fähigkeit, Windowsanwendungen laufen zu lassen kommt aus Wine. Wine ist ein Open-Source Softwareprojekt mit einer über zwanzigjähigen Geschichte. Der interessante Teil, unsere internen Sourcecode Zweige zu verwalten ist, wie diese mit Wine integriert werden. Um unseren Releasezyklus zu verstehen, muss man Wines Entwicklungszyklus verstehen.

Der Entwicklungszyklus von wine

Wines Haupt git-repository befindet sich unter

 git://source.winehq.org/git/wine.git
 
  

Mitwirkende schicken täglich Patches an wine und jeden Tage committet Alexandre Juillard, unser furchloser Leiter, akzeptierte Patchen in Wine’s Hauptrepository. Hier bei CodeWeavers ist unser grundlegender Arbeitsprozess, dass unsere eigenen Wineentwickler ihre Arbeit an wine über den regulären Einreichungsprozess einbringen (und hoffen, dass es akzeptiert wird!). Standardmäßig geht also der Code, den wir scheiben zuerst in das Open Source Repository bevor es in unsere eigenen git-Zweige kommt.

Wine erfährt alle zwei Woche eine nummerierte Entwicklungsveröffentlichung, zu wechselnden Freitagen. Diese Veröffentlichungen erhalten ein Tag und werden gebaut und weit in der Open Source Gemeinschaft verwendet. Es wird keine Magie bei den Entwicklungsversionen angewendet – keine speziellen Tests werden durchgeführt und keine Meilensteine für diese Entwicklung erreicht. Es sind einfach und praktisch nummerierte Schnappschüsse der Wine-Entwicklung innerhalb regulärer Zeitintervalle.

Bei CodeWeavers nennen wir unseren Haupt-git-Zweig den ‘crossover’ Zweig. Sofort nach jeder Wineentwicklungsveröffentlichung verbindet Alexandre Wine’s Hauptzweig in unseren internen CrossOver Zweig. So bekommen wir neue Arbeit von Upstream in die Codebasis, die wir nutzen um CrossOver zu bauen. Dies bedeutet, dass für unseren “Standardprozess” ist der zweiwöchige Winemerge das erste Mal einem bestimmten Teil von Wineentwicklungsarbeit – selbst Arbeit von unseren eigenen Entwicklern – unser internes Quellenrepository betritt. [1]

Entwicklungsveröffentlichungen sind spannend, da sie all die neuesten Änderungen beinhalten. Allerdings bedeutet diese Spannung, dass sie instabil sein können. Um dies zu verwalten, ist es nicht überraschend, dass wir einen Releasezweig verwenden.

Release-Zweige

Wir veröffentlichen eine Major-Version von CrossOver einmal im Jahr, irgendwann im Herbst. Etwa zwei Monate vor unserem Veröffentlichungsdatum machen wir einen neuen Zweig basierend auf unserem “crossover” Hauptzweig. Dieser Zweig widmet sich unserer kommenden Veröffentlichung. Unsere Releasezweige starten ihr Leben somit wie es jede Entwicklungsveröffentlichung von Wine tun würde – einfach ein Schnappschuss der Wineentwicklung, die zu einem bestimmten Zeitpunkt gemacht wird.

Wir machen unsere Releasezweige stabiler indem wir durchgehend testen. Wir testen, testen und testen, beheben Bugs und testen noch mehr. Wir testen einige Wochen bei uns und starten eine Beta wobei über zweihundert engagierte Betatester auf CrossOver herumhammern und Probleme berichten. Am Ende unserer Betyzyklen wurde der Code zuverlässiger und vorhersehbar.

Normalerweise machen wir keine weiteren Merges von Wine entlang eines Major-Releases von CrossOver. Somit kann man sagen, üblicherweise hat eine bestimmte Version von CrossOver immer die Version von Wine, die sie hatte, als wir zuerst den Releasezweig von Wine für diese Version erstellten.

Natürlich beheben wir Bugs während der Lebenszeit einer Version aber wir halten diese Behebungen gezielt so dass wir bezüglich ihrer Sicherheit sicher sein können.

Einige Veröffentlichungen sind außergewöhnlich und wir manchen gelegentlich eine vollständige Einbeziehung zwischen Major-Releases. Dies passiert selten. CrossOver 16.2 ist eine dieser Ereignisse! Dies macht es etwas zu einem besonderen Fall. Wenn wir wirklich einen wine-Merge machen, tendieren wir dazu, eine weitere Runde von Betatests zu machen (obwohl diese etwas kürzer als die erste sind).

Hacks

Wine hat sehr hohe Standards bezüglich welches Code in das Masterrepository kommt. Als kommerzielles Produkt weichen CrossOvers Bedürfnisse oft aus pragmatischen Gründen ab. Normalerweise bedeutet dies, dass ein Entwickler ein Problem sieht und kann sagen, dass die elegante Lösung einige Monate Arbeit braucht oder höchst destabilisierend wirkt. Dann bitte ich um eine Lösung, die in der Praxis funktioniert, selbst wenn sie unsauber ist oder das Problem nur in begrenzter Weise löst. Wine wird im Allgemeinen solche Lösungen nicht akzeptieren aber diese verbessern die Lage für unsere Kunde. Wir halten diese Lösungen in unserem eigenen Sourcerepository und nennen diese “Hacks”.

Hacks sind ein Problem, da sie dafür sorgen, dass unsere Quellen von Wines Masterrepository abweichen. Dies macht das Leben für Alexander schwierig denn es ist schwierig Wines Master-Sourcecode in unseren Zweig zu integrieren wenn es Unterschiede dieser Art gibt. Die Unterschiede, die durch unsere “Hacks” entstehen verursachen Konflikte während der Zusammenführung und Alexandre muss jederzeit um diese herumarbeiten wenn eine neue Zusammenführung gemacht wird. Dies ist anstrendend, fehleranfällig und unangenehm.
Aus diesen Gründen war es so, dass wir es vorzogen unsere Hacks in Releasezweig zu bringen. Wir fingen bei CrossOver 16 damit an von unserem Haupt “crossover” Zweig zu branchen und dann zogen wir sofort alle Hacks aus CrossOver 15 herein. Auf diese Art versuchten wir, Hacks in unserem Master ‘crossover’ Zweig zu verhinden in dem Alexandre alle zwei Wochen Merges macht. Die Vermeidung von Hacks auf diesem Zweig machte sein Leben einfacher (und verhinderte eine potentielle Fehlerquelle).

Es gab jedoch Probleme mit diesem Ansatz. Hacks tendierten dazu, von einer Veröffentlichung zur nächsten, zu verschwinden. Somit könnten wir einen Bug mit einem Hack von CrossOver 15 beheben aber wenn wir vergessen würden, den Hack auf unser neues CrossOver 16 anzuwenden, würde der Bug wieder auftreten. Ebenso bedeutete es, dass wir gewisse Windowsprogramme mit unserem Haupt ‘crossover’ Zweig nicht testen konnten, da manche von diesen Hacks zur Funktion benötigten (und diese Hacks waren nur in Releasezweigen vorhanden). Diese Dinge konnten ohne Tests lange Zeit bestehen und wir könnten die Fehlfunktionen nur innerhalb eines Betazyklus für eine neue Veröffentlichung feststellen. Aus diesen Gründen begannen wir fast alle unsere Hacks im crossover Masterbranch zu halten. Dies macht es schwieriger, die zweiwöchigen Merges zu machen aber verhindert andere Probleme.

Trotzdem gibt es immer noch Ausnahmen. Einige “hacks” oder diffs vom upstream wine, sind tatsächlich enorme Massen an Arbeit, die in Hunderte von individuellen Patches enden und viele, viele Datein berühren. Momentan ist der “Command Stream” von wine3d das Hauptbeispiel für einen so großen “Hack”. Es ist nicht realistisch so etwas in unserem Master ‘crossover’ Zweig zu halten da Merges danach wirklich zu schwierig wären, um diese alle zwei Wochen durchzuführen. Somit liegt so etwas nur in den Releasezweigen und wird von einem Releasezweig auf den nächsten bei jedem Zyklus portiert. Es ist schwer und insbesondere mit dem Command Strem versuchen wir, dies upstream zu bringen damit wir diesen nicht mehr weiter verwalten müssen. Zum Glück tendieren wir dazu nicht zu viele solcher enormen “Hacks” zu einem bestimmten Zeitpunkt zu haben. Wenn dies der Fall ist, kann dies Dinge enorm kompliziert oder teuer machen. Somit versuchen wir den Rahmen unserer “Hacks” klein zu halten oder sie upstream zu bringen.

Zusammenfassung

Grundlegendes:

  • CrossOver hat eine Version von Wine für jedes Majorrelease mit seltenen aber wichtigen Ausnahmen. Wir testen diese Versionen rigoros um diese zu stabilisieren.
  • Unser allgemeiner Arbeitsprozess ist, dass Entwickler Patches an Upstream Wine senden bevor diese unsere interne Repositories erreichen. Somit ist die meiste unserer Arbeit öffentlich verfügbar bevor wir diese selbst nutzen. (Natürlich finden wir einen Weg dies zu bekommen wenn wir in Eile sind und es schnell gehen muss)
  • Benutzer mit Privilegien unsere Nightly Builds zu nutzen werden feststellen, dass ein Winemerge alle zwei Wochen stattfindet, da die Nightly Builds im Allgemeinen von unserem Haupt ‘crossover’ Zweig kommen. Diese Build werden den wine3d Command Stream nicht enthalten.

Wenn dich Wine interessiert, kannst Du www.winehq.org besuchen oder den Quelltext unter

git://source.winehq.org/git/wine.git
 

auschecken… und es selbst bauen. Patches sind Willkommen! 

1. Natürlich brauchen wir mache Dinge manchmal schneller und lassen nicht zu, dass unser ‘Standard-Arbeitsprozess’ uns zurückhält. Wenn wir in Eile für eine bestimmte Arbeit sind, können wir uns immer die Rosinen heraus suchen  oder es direkt an wenden.

Über Josh DuBois
Josh DuBois ist ein Ingenieur und Produktmanager für CrossOver.

Über CodeWeavers

Im Jahre 1996 als allgemeine Softwareberatung gegründet, konzentriert sich CodeWeavers auf die Entwicklung von Wine – die Kerntechnologie, die sich in allen CrossOver Produkten befindet. Das Ziel des Unternehmens ist es, erweiterte Marktchancen für Windowssoftwareentwickler zu bieten indem die Portierung von Windows-Software auf Mac und Linux einfacher, schneller und schmerzloser gemacht wird. CodeWeavers gilt als führend in der Open Source Windows Portierungstechnologie und unterhält Entwicklungsbüros in Minnesota, im Vereinigten Königreich und rund um die Welt. Die Firma befindet sich im Privatbesitz.