Nieuws:

Help mee aan het verbeteren van het forum via een donatie. Klik hier,

Hoofdmenu


Voortgang Open Source Bierbrouw Software

Gestart door Oscar, 06-06-2006 11:52 u

Vorige topic - Volgende topic

0 leden en 1 gast bekijken dit topic.

Oscar

Beste Brouwers,

Bij deze kan ik melden dat er een voorzichtig begin is gemaakt met het programmeren van het Open Source Pakket. Dit vergt tijd....maar in dit forum onderdeel houden we jullie op de hoogte van de ontwikkelingen. Er is nog geen test versie..daarvoor is het nog te vroeg.

Het plan is om eerst wat databanken te maken (Mout, hop , gist, kruiden e.d.) en ook wat aparte reken module's (Berekening van hopgist/bitterheid, kleur e.d.).
Zodra deze klaar zijn kunnen we gaan bedenken hoe de receptenmodule er uit moet gaan zien, dit zal het lastigste onderdeel zijn....

Maar het begin is er.....

Groeten en gezondheid
Oscar

Adrie

Ik vind zojuist een ander Open Source brouwprogramma project: BrewSta. Ziet er ook al aardig uit. Dat boompje met de databases links in het scherm leek mij ook een aardig idee, maar daar hebben we het vorige week al over gehad.

Oscar

Programma had ik al gezien....leuk voor ideeën.

Tot op heden hebben we werkend :
 * kleur Berekening (EBC Waarde)
 * Bitterheid / hopgist berekening (Formule van Horst !)
 * Biertype Database met de getallen uit Boekje Derek Walsch

Groeten gezondheid
Oscar


Emile

Oscar,

Ik zat zelf te denken om Adrie zijn spreadsheet als basis te gebruiken, om van hieruit een C++ applicatie te schrijven.

Zo te horen ben jij al een eind op weg met zoiets. In welke programmeertaal schrijf je jouw programma?

Emile

Adrie

We gebruiken als programmeeromgeving Lazarus. Dat is een open source Delphi-variant. Lazarus is er zowel voor Windows als voor Linux. Het programma kan dan dus op beide platforms draaien.

Oscar

Citaat van: Emile op 08-06-2006  20:48 uZo te horen ben jij al een eind op weg met zoiets. In welke programmeertaal schrijf je jouw programma?

Emile tot op heden ben ik er in mijn eentje mee bezig echter is er door Adrie ook an het een en ander aan voor bereidenig aan gedaan en de formules uit BrouwHulp worden zeker in het geheel meegenomen, en zoals Adrie al meldde is lazarus de ontwikkel omgeving Als je al C++ Kunt programeren lijkt Delphi/ Lazarus ook wel te doen. De Omgeving zelf is ook nog in Ontwikkeling...dus alles is niet niet ideaal...maar zeker wel werkbaar en met een beetje idealistme kunnen we een heel eind komen....Wellicht later deze week nog een update.....

Groeten en gezondheid
Oscar

Oscar

Update (versie 0.00.04  ;))!!

De volgende reken modules (Berekeningen) zijn toegevoegd :

- Volume berekeningen : Pan inhoud aan de hand van hoogte v/d vloeistof, berekening van hoeveelheid brouwwater en spoelwater, Correctie dichtheid
- Brouwhuis consten : Pan afmetingen, Brouwverliezen, Maischwater/spoelwater verdeling (dunne maisch, dikke maisch, standaard maisch).

Groeten en gezondheid
Oscar

Emile

Aha, interessant. Ik vind het wel aardig om mijn Pascal/Delphi kennis weer even bij te werken, is een paar jaar geleden dat ik daar voor het laatst mee gewerkt heb.

Gelukkig geen talen als VB/.net e.d.

Heb je ergens een CVS repository waar de sources staan?

Ik zal dat Lazarus ook downloaden en installeren, kijken hoe dat werkt. Is dat uitwisselbaar met Borland's Delphi?

Oscar

Emile,

als je een beetje kunt programeren in Delphi/Pascal, dan kun je ook programeren in Lazarus....die zijn bijna zo goed als gelijk, met de opmerking dat Lazarus nog in ontwikkeling is. Echter is het wel leuk om met deze "gebreken" die in de toekomst wel zullen opgelost worden, te programeren. Bij een volgende update wordt de Source en misschien Het programma zelf ook wel op de Website van Host wel ter beschikking gesteld..

Indien je tzt mee wilt programeren...laat dit dan even weten.....

Groeten en gezondheid
Oscar

Oscar

Citaat van: Emile op 13-06-2006  23:33 uIs dat uitwisselbaar met Borland's Delphi?

 :neenee:  :neenee:

Groeten en gezondheid
Oscar

Emile

Citaat van: Oscar op 13-06-2006  23:39 u:neenee:  :neenee:

Oscar,

Je kunt toch ook met programma's als Borland Delphi open-source programma's maken? Ja, ik ben een voorstander van open source, maar dan hoef je toch niet altijd daarvoor ook een open source compiler te gebruiken?

Ik heb de documentatie bekeken van Lazarus en veel objecten zijn niet of deels gerealiseerd. Het lijkt mij dat je het jezelf dan extra moeilijk maakt door hiermee een applicatie te ontwikkelen (zeker als je dat vergelijkt met de complete omgevingen van Borland).

Niettemin is het initiatief prima en moet iemand een besluit nemen over de taal/compiler/ontwikkeomgeving (want hier kun je inderdaad oeverloos over discussiëren).

Oscar

Citaat van: Emile op 19-06-2006  00:05 uJe kunt toch ook met programma's als Borland Delphi open-source programma's maken? Ja, ik ben een voorstander van open source, maar dan hoef je toch niet altijd daarvoor ook een open source compiler te gebruiken?

Dat klopt, met delphi zou je een ontwikkelings omgeving hebben waarin alles al functioneel is, echter willen we ook een versie van Linux/unix
maken en Lazarus geeft de mogelijkheid om met 1 source code het programma te compileren voor Windows, Linux/Unix... Daarentegen is het
ook wel weer een uitdaging om met  behulp van een Open Source Programmeer omgeving een Open Sorce Bierbrouw programma te maken..
En de manier van programeren is identiek aan Delpi.

Groeten en gezondheid
Oscar


Arjan

Ik zou toch nog een lans willen breken voor Python (http://www.python.org). Deze taal is zeer toegankelijk en heeft een brede gebruikersgroep (het wordt bijvoorbeeld standaard in alle Linux distro's en Mac OS X meegeleverd).

Er zijn ruim voldoende bibliotheken voor en met bijvoorbeeld WxWindows is het mogelijk een GUI te maken voor alle mogelijke platformen (ook Mac OS X, Lazerus pretendeerd dat ook te kunnen maar zij gebruiken een soort emulatie).. Mijn verwachting is dan ook dat deze taal veel toekomst bestendiger is.

Bijkomend voordeel is, wanneer je het brouwpakket installeert, dat het direct als bibliotheek te gebruiken is. Zo kan je eenvoudig een exporteer functie maken (of d.m.v. serverside scripting de recepten presenteren als web pagina's). Er is zelfs een Python versie voor Nokia mobiele telefoons (da's handig tijdens het brouwen  :duimop:)

(misschien ook leuk: Dit is een Nederlands product, uitgedacht door Guido van Rossum, van (toendertijd) Stichting Mathematisch Centrum, Amsterdam.)

gr.

Arjan

Emile

Python is een zogenaamde interpreter taal, hetgeen betekent dat iedere regel ter plekke wordt vertaald in assembly om dan uitgevoerd te worden. Dit in tegenstelling tot gecompileerde talen, zoals C, C++, Pascal e.d.

Maakt dat uit? Jazeker, vooral in snelheid. Een compiler vertaalt de bron-code eenmalig in een .exe file. Als een interpreter 100 keer een regel uitvoert, wordt die 100 keer vertaald en uitgevoerd.

Python is leuk om scriptjes mee te schrijven e.d. maar niet om een serieuze applicatie mee te maken. Dit soort talen (Python, Tcl/Tk, Perl) worden in software development omgevingen vaak gebruikt om test-scripts e.d. te maken (voor bijv. unit testen en integratie testen). Maar de "echte" software wordt toch vooral in C (C++) geschreven. Java is tegenwoordig een hippe taal, maar haalt het niet bij de performance van C++.

Persoonlijk zou ik een serieuze applicatie dan ook altijd in C/C++ schrijven. Maar in een hobby omgeving is Delphi (Pascal, Lazarus) een goede keuze, zeker als je compatibiliteit met Linux/Unix wilt. Zolang het maar geen Visual-Basic is!  ;D

Oscar

Er is een weer een update....Versie 0.00.06

Deze is te downloaden van de Open Source Website

Zowel de code als Het voorlopige programma is te downloaden. Voor de geinteresserden : Bekijk het eens en indien je opmerkingen en/of aanvullingen hebt laat dit dan weten in dit onderwerp.

Enkele aanvullingen die zijn gemaakt :

* Dichtheid correctie voor na het brouwen (Hoeveel water toevoegen of doorkoken of aanvullen met suiker...)
* Tabel/Databank voor de hop

Groeten en gezondheid
Oscar

Arjan

Beste Emile,

Jammer dat je niet verder kijkt dan talen zoals C en C++.

Ik weet dat dit compleet off-topic gaat maar wil toch even reageren.

CiteerPython is een zogenaamde interpreter taal, hetgeen betekent dat iedere regel ter plekke wordt vertaald in assembly om dan uitgevoerd te worden. Dit in tegenstelling tot gecompileerde talen, zoals C, C++, Pascal e.d.

Het klopt inderdaad dat Python een zogenaamde geinterptereerde taal is. In sommige kringen wordt het nog (denigrerend) aangeduid als scripttaal, maar dat is niet echt juist. Python is een echte complete OO taal.

Qua snelheid merk je er echter niets van. 99,9% van de tijd staat het ding toch te wachten op gebruikersinvoer.

CiteerMaakt dat uit? Jazeker, vooral in snelheid. Een compiler vertaalt de bron-code eenmalig in een .exe file. Als een interpreter 100 keer een regel uitvoert, wordt die 100 keer vertaald en uitgevoerd.

Een regel code wordt slechts eenmaal vertaald. Deze wordt opgeslagen als byte-code (zoals bij Java) en de volgende keren wordt de byte-code direct geladen. Het is dus eigen JIT (just in time) compilatie.

Wat echt telt is de snelheid waarmee je het programma kunt schrijven (pascal doet het hierin ook beduidend beter dan C/C++). De snelheid waarmee je nieuwe features kunt toevoegen en de snelheid waarmee je de code kunt verbeteren. Het verschil in opstartsnelheid is echt minimaal (mede omdat je code kunt laden op het moment dat je het nodig hebt).

CiteerPython is leuk om scriptjes mee te schrijven e.d. maar niet om een serieuze applicatie mee te maken. Dit soort talen (Python, Tcl/Tk, Perl) worden in software development omgevingen vaak gebruikt om test-scripts e.d. te maken (voor bijv. unit testen en integratie testen). Maar de "echte" software wordt toch vooral in C (C++) geschreven. Java is tegenwoordig een hippe taal, maar haalt het niet bij de performance van C++.

Tja, da's dus regelrecht onjuist. Applicaties als Zope (http://zope.org) en Gaphor (http://gaphor.sourceforge.net, geschreven door ondergetekende) zijn echte serieuze applicaties bestaande uit tienduizenden regels code.

In het verleden heb ik dat ook heel wat C geschreven (o.a. http://diacanvas.sourceforge.net). Wat echt telt is echter de tijd waarin je de applicatie in elkaar kan zetten. In Python doe je in 10 regeld waar je in C/C++ 50 of meer regeld voor nodig hebt. Dat is mede de rede dat ik voor mijn andere project (Gaphor) Python hebt gebruikt. Laatst nog heb ik de diacanvas code overgezet van C naar Python. Qua snelheid merk je het amper, maar in plaats van 20.000 regeld code ben ik nu met c.a. 4000 regels klaar. Dus ik spreek uit ervaring.

Citeer... Zolang het maar geen Visual-Basic is!

Kijk, hier kan ik helemaal inkomen. VB is trouwens ook niet portable, en dat was toch wel een van de vereisten.

gr.

Arjan

Emile

Laten we het erop houden dat ik blij ben met het initiatief van de heren om überhaupt een besluit te nemen over welke omgeving ze gaan gebruiken voor de open source bierbrouw software. En zoals ik al eerder stelde: je kunt echt heel lang discussiëren over welke taal het meest geschikt is.

Blijkbaar weet ik niet alles van Python (jouw UML modelling tool ziet er erg indrukwekkend uit). Ik zal proberen het niet langer een scripttaal te noemen (maar in iedere software/R&D club waar ik gewerkt heb, werd er wel zo tegenaan gekeken en werd het inderdaad gebruikt om test-code te maken).

Terug naar het topic: ik vind het grappig om weer eens wat met Lazarus / Delphi / Object Pascal te doen. In die zin wil ik graag meedoen, maar dat zal niet op heel korte termijn zijn. Ik zal wel binnenkort Lazarus eens downloaden en installeren.

Oscar

Citaat van: Emile op 22-06-2006  23:36 uTerug naar het topic: ik vind het grappig om weer eens wat met Lazarus / Delphi / Object Pascal te doen. In die zin wil ik graag meedoen, maar dat zal niet op heel korte termijn zijn. Ik zal wel binnenkort Lazarus eens downloaden en installeren.

Emile...dat zijn pas antwoorden !!!!  :hoera: :hoera: Help kunnen we zeker gebruiken, momenteel nog in mijn uppie aan het programeren (met veel plezier overigens..). Een dezer dagen zal ik wat documentatie maken over de werkwijze en voorwaarden enz enz.. voor het programeren met meerdere mensen aan 1 project, Inclusief Documentatie over de huidige structuur (Technisch, code gerelateerd) van het programma....

Groeten en gezondheid
Oscar

Arjan

Emile, ik kan me bij jouw aansluiten. (zo, meteen even mijn eigen projectjes gepluged  ::) )

Zeg Oscar, heb je al gedacht over versiebeheer voor de code (CVS of Subversion). Als je met meerdere mensen aan dezelde codebase werkt is het echt een must. Heeft Horst nog wat ruimte vrij op zijn site of moet je dan uitwijken naar Sourceforge.net o.i.d.?

gr.

Arjan

Oscar

Citaat van: Arjan op 23-06-2006  08:31 uZeg Oscar, heb je al gedacht over versiebeheer voor de code (CVS of Subversion). Als je met meerdere mensen aan dezelde codebase werkt is het echt een must.

nog niet helemaal...heb jij hier ervaring mee..??

groeten en gezondheid
Oscar

Adrie

Een goed codebeheer is inderdaad een must. Ik heb er ook geen ervaring mee. Ondertussen sta ik wel te popelen om ook mee te gaan programmeren!

Oscar

Citaat van: Adrie op 23-06-2006  09:22 uEen goed codebeheer is inderdaad een must.

Over code beheer heb ik al wel nagedacht, en ik heb collega's die hier wel een en ander van afweten...Ik zal eens informeren en een documentje hiervan maken voor als er programmeurs mee gaan helpen  :bijdrage_forum:

groeten en gezondheid
Oscar

Arjan

Persoonlijk (en zakelijk) ben ik erg gecharmeerd van Subversion (http://subversion.tigris.org).

Emile

Kijk, zo leer ik ook weer wat. Ik dacht toch echt alle versiebeheer/configuratie management tools inmiddels wel te kennen. Niet dus. Komt Arjan met Subversion aan. Weer wat geleerd vandaag!

Persoonlijk zou ik kiezen voor CVS, maar dat komt dus omdat ik Subversion niet ken. CVS is de standaard op open source gebied, ik gebruik het zelf al sinds jaar en dag voor mijn eigen software projecten. Werkt uitstekend. Ook zakelijk heb ik hiermee gewerkt, waar dagelijks 40-100 developers op dezelfde code-base werkten (dus we kunnen even vooruit...).

Ik kan er redelijk mee uit de voeten, maar hoe je dat als server moet installeren op een site? Ik heb geen idee. Maar op zich wel op te lossen. Maar misschien dat Arjan alles weet van Subversion? Dan sluit ik me daar graag bij aan.

Ik ben het wel eens met de opmerking dat als je hier met meer dan 1 persoon aan gaat werken, je zo'n tool moet hebben. Anders is het niet te doen.

In het verlengde hiervan: je moet ook een bug-tracking tool hebben (GNATS? Ik heb altijd Continuus/Synergy gebruikt, maar dat is een beetje duur hiervoor...). Om je suggesties, verbeteringen e.d. in op te bergen. Of heeft Subversion dit ingebouwd? Het overdenken waard, maar dit hoef je niet direct in het begin al te hebben (want we maken dan nog geen bugs, toch?  ;D).

Frank

Voor bugtracking is er natuurlijk altijd Bugzilla. Zelf vind ik Jira van Atlassian (http://www.atlassian.com/software/jira/) zeker beter gesmoeld en gratis voor OSS projecten :)

De feature die subversion voormij beter dan cvs maakt is deze (vande webiste subversion.tigris.org):

- Directories, renames, and file meta-data are versioned.

Lack of these features is one of the most common complaints against CVS. Subversion versions not only file contents and file existence, but also directories, copies, and renames. It also allows arbitrary metadata ("properties") to be versioned along with any file or directory, and provides a mechanism for versioning the `execute' permission flag on files.

Vergelijkbare Topics (7)

40431

Reacties: 6
Gelezen: 1702

29897

Reacties: 13
Gelezen: 6602

31472

Reacties: 338
Gelezen: 99299

42166

Reacties: 7
Gelezen: 1590

30485

Reacties: 63
Gelezen: 19200


Zoeken met Google op deze site.
Brouwspullen zijn ook te koop via Bol.com.
Als je iets bestelt bij Bol.com (ook andere zaken dan brouwspullen) via deze link steun je het forum.


Het boek van de beheerder van deze site.