Search

Archives

Pages

Op mijn desktop:

Suggesties, commentaar, ... (klik of schrijf zelf:)e-mail webgang

Private

Laatste titels:

Spoedmaatregelen + Vervolg Pi-duino brouwerij

Uitzending do 18:00 ** April 23rd, 2020 by wim.webgang **

Spoedmaatregelen
Zoom
Door de corona-crisis worden er soms minder vragen gesteld; zo gaan veel mensen plots Zoom gebruiken, zowel voor het werk (was bedoeld als vergader-app), als voor prive gebruik om vrienden prive te ontmoeten.

e-mail: even naar Microsoft bellen
In het stedelijk basisonderwijs worden de kinderen nu plots aangmaand om een e-mail adres aan te maken op een systeem dat schijnbaar van de stad Antwerpen / het stedelijk onderwijs is. Wie beter kijkt, bv naar de URL, ziet dat het waarschijnlijk een cloud dienst is van Microsoft.

Wie het verlden van dat bedrijf kent (veroordeeld voor monopoliepraktijken en nooit verlegen om met FUD-en andere technieken concurrenten uit de markt te houden enz.). Dat bedrijf gaan we dan de voornaam en achternaam van onze kinderen aanleveren, en hen warm maken voor de produkten van- en als toekomstige klanten van dat bedrijf? Is het stedelijk onderwijs niet groot genoeg om zelf een mailserver op te zetten en te onderhouden? En zo nee, is er dan in Antwerpen niemand te vinden, geen enkel bedrijf dat dat voor het stedelijk onderwijs kan doen? Of in de buurt, Limburg bv? Ik denkt het toch wel…?

Het kind dat zich aanmeldt krijgt een vooraf klaarstaande voornaam.naam met verder “@eduso.antwerpen.be”
Dan moet een wachtwoord gekozen worden, en het moet natuurlijk moeilijk genoeg zijn, met mengeling van hoofdletters, kleine letters en andere tekens. Welke allemaal mogen of welke juist niet mogen staat niet vemeld. Het gebeurt dus dat een kind een wachtwoord bedenkt, dat invoert, en dan uitkomt op … een foutmelding. Meer nog, een foutpagina, Engelstalig en helemaal vol codes waar een volwassene zelfs geen touw aan kan vastknopen. Het lijkt eerder een interne systeemmelding of zo en het bevat op geen enkele manier bruikbare informatie over wat er is foutgegaan of wat je best zou doen.
Hoe kan een kind van de lagere school hier nu mee verder? Even naar Microsoft bellen?
De kinderen van een IT-ouder zullen van papa of mama misschien de tip krijgen om Firefox eens te sluiten en opnieuw te proberen, en uit het wachtwoord één of ander speciaal teken te vervangen door een ander, bv het vraagteken vervangen door een streepje.

En dan gaat het verder, na het aanmaken van het adres krijgt de gebruiker, hier dus een lagere-school kind, de vraag:

Stay signed in?
Do this to reduce the number of times you are asked to sign in.
[ ] Don’t show this again

Echt waar?

Pi-duino brouwerij
Vervolg van de open source brouwerij

Tweede deel van het bouwen van een thuis-brouwerij op zijn Brits.
Je kan de hele tekst van het LinuxVoice artikel in audio vinden op het net (tenzij het ondertussen offline gehaald is – het tijdschrift betstaat immers niet meer, wel het internet archief ervan: https://archive.org/details/LinuxVoice/mode/2up )
upd: Hier heb ik wel het originele artikel gevonden (tekst+foto’s) in pdf: http://linuxvoice.com/wp-content/uploads/2014/03/brewpi.pdf
En hier de broncode van de software: https://github.com/BrewPi

Lift ^ | Lift v | Comments Off

De Raspberry Pi of Arduino brouwerij?

Uitzending do 18:00 ** April 16th, 2020 by wim.webgang **

Na de 10 minuten social distancing tov het vorige programma (waarin u het begin van het programma van vorige week hoorde – inderdaad verwarrend), en na het korte nieuws, wordt de rest van de uitzending gewijd aan de Britten van het ondertussen ter ziele gegane Linux Voice, die een thuisbrouwerij opzetten met behulp van een Raspberry Pi en Arduino.
ps: Het laatste stuk paste niet meer in het programma-uur, dus de laatste 10 minuten ongeveer vervolgen we volgende week.

Tot mijn verwondering leer ik dat de Arduino eigenlijk al het werk doet. Zou zouden het dus beter een Brewduino noemen in plaats van Brewpi. De Raspberry pi dient alleen maar als webserver om de gegevens die verzameld worden weer te geven op eender welk apparaat op het (interne) netwerk. Je zou er eender welke andere computer (met Linux erop) voor kunnen gebruiken.
De Arduino heeft de juiste mogelijkheden om voelers aan te sluiten en sturing te doen; en bovendien laten ze hem nog rekenen ook.

Ze gebruiken voor het project een voorbereide “Spark” set van het Brewpi project (https://www.brewpi.com/); verder een ijskast die omgebouwd moet worden om zowel warmte als koude te kunnen maken.

U hoorde alvast het eerste half uur van de 40 minuten durende aflevering van BrewPi; volgende week verder!

Lift ^ | Lift v | Comments Off

Gambas 2019 overzicht (2/2)

Uitzending do 18:00 ** April 9th, 2020 by wim.webgang **

(vervolg van / zie ook deel 1 Gambas 3.12)

Gambas is de ideale programmeertaal en -omgeving om te leren terwijl je thuis in quarantaine zit…
Ze is gemakkelijk te installeren uit de software verzameling van je Linux distributie (Ubuntu, openSUSE, …) maar de versies van Gambas kunnen wel wat verschillen, bv op een verouderde distro 3.9, op andere 3.10 (openSUSE 15.1 standaard), of naargelang de repository op 3.14 (openSUSE 15.1 community repo, 15.2/tumbleweed standaard), maar alle recente systemen zouden toch rond de hier besproken 3.12 moeten zitten, of met wat geluk 3.14.x (openSUSE 15.1, Ubuntu 1804 LTS), enz (meer)
Vorige week waren we geëindigd bij het eigen lettertype dat Gambas gekregen had (ter download in de IDE):

Diverse verbeteringen

Een greep:
– mogelijkheid om een breakpoint te de-activeren; zeer handig om een breekpunt in de code te kunnen afzetten terwijl het programma draait (vanuit de IDE)
– gebruik van bestanden met het patch formaat
– de maker van de packages beheert nu de applicatie los van de grafische toolkit.
– automatisch aanvullen van de naam van bestanden
– de gewijzigde bestanden zijn automatisch bewaard bij het crashen van de programmeeromgeving (niet dat die veel crasht)
– het venster van het openen van een project is herzien
– de online hulp is te downloaden vanuit het opties menu voor offline gebruik; de documentatie apart online bewaren heeft het voordeel dat ze apart up to date gehouden kan worden, maar als je met je laptop offline zit te programmeren heb je daar niet veel aan. Gelukkig nu dus ook terug documentatie offline!
– de compressie van javascript bestanden en CSS is verbeterd
– PNG bestanden kunnen automatisch versleuteld worden indien het hulpprogramma pngquant aanwezig is. (ps: pngquant kan gemakkelijk bij-geïnstalleerd worden met apt get of via online zoek bij de paketten van je distributie, zoals software.opensuse.org; pngquant is a command-line utility and a library for lossy compression of PNG images)
– het beheer van donkere thema’s is aanzienlijk verbeterd
– het beheer van de sessies is onder handen genomen
– de interface van de debugger is herzien
– er is een venster voor het ingeven van speciale tekens
enz.

Toegang tot databanken

Het systeem voor de toegang tot databanken is verbeterd; enkele voorbeelden:
– de component gb.db.mysql laat toe sneller met mysql databanken te werken dankzij een interne cache van de meta-data.
– de component gb.db.sqlite3 laat toe met SQLite 3 databanken te werken en is volledig herschreven in C; ze is nu betrouwbaarder, sneller, gebruikt minder geheugen.
– de component gb.db.odbc kan nu een string verbindingsgegevens met ODBC ontvangen als hostname van de datanbank
– de component gb.db.form die grafische controle-elementen voorziet voor gebruik met databanken heeft een aantal verbeteringen gekregen.
Je zou in de verleiding komen je eigen databasetools aan de kant te schuiven…

De tekstverwerker component

De tekstverwerker met kleurcodering voor het programmeren is volledig herschreven in Gambas. Hij is geïmplementeerd in de nieuwe component gb.form.editor. Die tekstverwerker biedt alle mogelijkheden van de oude tekstverwerker, en brengt nog nieuwigheden:

En aangezien de tekstverwerker geschreven is in Gambas, kan je hem gebruiken in je eigen applicaties (bv die waarin je zelf code genereert…).

En nog meer, zonder in detail te gaan:
- Componenten Grafische interfaces/Grafische toolkits
(en daar ook even zijn tweede frustratie met de wankele compatibiliteit van GTK+ 3 – hij hoopt dat het de beta is voor GTK+ 4 …)
- Herschrijven van de controle-objecten in Gambas
- Toevoeging van vele nieuwe controle-elementen
- Multi-precisie berekeningen
- Verbeteringen aan de taal (backward compatibility?? Maar ok, het zijn kleine dingen..)
enz…

Snelheidstesten

En dan iets waar de programmeur terecht trots op is: snelheidstesten tussen gambas enerzijds en python en perl anderzijds draaien nog steeds uit in het voordeel van Gambas…

Bron / de volledige Nederlandstalige vertaalde versie van het origineel Frans artikel http://gambas.copyleft.be/blog/archives/2144

Lift ^ | Lift v | Comments Off

Gambas 3.12 (aflevering 1/2)

Uitzending do 18:00 ** April 2nd, 2020 by wim.webgang **

Gambas 2019 overzicht

Al een paar weken aangekondigd, de Gambas 2019 special. We installeren tijdens de tune van het programma de versie Gambas 3.9 op een iets oudere Linux distributie, zodat we een beetje kunnen vergelijken met de hier besproken recentere versie. Dat installeren duurde maar een paar minuutjes (vanuit het softwarebeheer “Yast” op openSUSE).

In januari 2019 kon je een artikel vinden van Benoit Minisini op de Franse linuxfr.org website. Het artikel sijpelde door naar hier omdat er naar verwezen wordt op de documentatiewebsite van Gambas op gambas.sourceforge.net. Het kan beschouwd worden als een vervolg voor een stukje dat hij schreef in 2012 naar aanleiding van het verschijnen van Gambas 3.3, en dat ook op die site te vinden is. Ps: Sinds eind 2019 is Gambas aan versie 3.14.x., de zogenaamde versie “Pi”.

Gambas 3.12

Gambas is een programmeertaal die object oriented werkt en gebaseerd is op een basic-achtige interpreteerder. En het is ook een volledige IDE of programmeeromgeving met ondermeer een compiler, een interpreteerder, een verzameling van modules die complementair gebruikt kunnen worden, en een geïntegreerde programmeeromgeving. Het geheel wordt verspreid onder de GNU GPL v2 licentie.

Een nieuwe compiler

De grootste verandering bij de stap naar versie 3.12 is het afscheid van de oude compiler, die gebaseerd was op LLVM.
De API van LLVM voor het maken van code is een aantal jaar geleden veranderd van versie LLVM 3.5 naar LLVM 3.6. Hoewel het cijfer een kleine versiesprong aangeeft, blijkt LLVM 3.6 niet compatibel met de vorige versie, wat mogelijk de programmeur van Gambas ooit frustreerde, een probleem waar hij nu definitief van verlost wil zijn.

De nieuwe compiler is van het type “in vliegende vlucht” of in het Engels “on the fly” of ook wel “Just In Time”, met de bekende JIT afkorting.

De compiler vertaalt de bytcode van Gambas (in C) tijdens het uitvoeren, en gebruikt vervolgens de compiler van het systeem (meestal gcc of clang) om verder te vertalen naar de uiteindelijke machinetaal. Vladimir Makarov van de programmeertaal Ruby moet ongeveer dezelfde ideeën gehad hebben, en die zijn toegepast in versie 2.6.0 van de programmeertaal Ruby. (www.ruby-lang.org/en/news/2018/12/25/ruby-2-6-0-released/).

Deze methode heeft een nadeel: ze is trager dan de vroegere compiler. Maar ze heeft het grote voordeel niet afhankelijk te zijn van de API van de soms minder betrouwbare aanwezige C compilers. In tegenstelling tot de vroegere compiler neemt de programmeertaal nu de zaak helemaal in eigen handen. Meer nog, er kunnen nu bepaalde testen uitgeschakeld worden om aan snelheid te winnen. Maar daarbij stijgt dan het risico op het crashen van het programma, bijvoorbeeld door een onmogelijke deling door nul.

Door het gebruik van de nieuwe compiler doken er kleine probleempjes op na het verschijnen van 3.12, maar die werden de daaropvolgende weken snel gerepareerd in versies 2.12.1 en 3.12.2.

Webapplicatie met grafische interface

Een andere grote ontwikkeling van Gambas 3 is de mogelijkheid om web-applicaties te maken vanuit de programmeeromgeving, alsof je een klassiek desktop programma maakt.

Nieuwe component en gebruik van de programmeeromgeving

Die nieuwe mogelijkheid is gebaseerd op een nieuwe component “gb.web.form”, die kan omgaan met javascript notering, JSON formaten en URL methodes. Met “gb.web.form” krijg je een extra form, de WebForm. Dit type van Forms dient om de grafische schermen te definiëren die in je webapplicatie gebruikt gaan worden. Ze kunnen overeen komen met klassieke html pagina’s of dialoogvensters. De component biedt dan verschillende grafische controle-elementen om te gebruiken op je Form.

(hier een voorbeeld van zo’n form: op linuxfr.org)

Werking

Het principe van een webapplicatie verschilt grondig van een typische “Modale” toepassing. De webapplicatie wordt gecompileerd tot een cgi script dat daarna draait op de server, en niet op de desktop van de gebruiker.
De browser van de gebruiker dient als interface, een soort grafische terminal. Html wordt de beschrijvig van de interface.
Er wordt zo weinig mogelijk javascript gebruikt. De handelingen van de gebruiker worden onder de vorm van http/xml requests naar het programma op de server gestuurd. Die antwoordt met de nodige javascript code om de pagina te verversen. De toestand van de grafische interface van de gebruiker wordt bewaard in de sessie van de browser. Dat is natuurlijk veel trager dan webapps die voornamelijk in de browser draaien, en het biedt minder mogelijkheden, maar het werkt toch vrij goed.

(een voorbeeld van zo’n form op linuxfr.org)

Voor gambas ontwikkelaars heeft dat bovendien het voordeel dat ze kunnen werken voor een platform dat verschilt van hun eigen Linux computer, denk aan collega unix-achtige Mac, waar spijtig genoeg geen gambas op draait.

Welkom, Git

Er zijn ook wijzigingen in de ontwikkeling, het programmeren van gambas zelf. De programmeurs van gambas zijn overgeschakeld van het subversion systeem van Sourceforge op het Git broncodebeheer systeem. De referentieversie van de ontwikkelaars vind je nu op gitlab.com.
De hoofdontwikkelaar gebruikte een jaar en een half git om het te proberen, en hij vindt het krachtiger, sneller, gemakkelijker, en betrouwbaarder. Er is letterlijk niets tegen in te brengen.

Ook de mailinglist is overgebracht van SourceForge naar een prive-server die door een gambas gebruiker beheerd wordt.
Het systeem om foutmelding te beheren, de bug-list, wordt al langer beheerd met een eigen programma dat in gambas geschreven is, en draait op de server van de werkgever van de hoofdprogrammeur.
Nu zit enkel de hoofdwebsite nog op SourceForge, maar ook daar zal verandering in komen.

Nieuwe systemen

Er zijn naast GNU/Linux op x86 steeds meer andere systemen waarop gambas compileren al lukt :
FreeBSD
NetBSD
GNU/kFreeBSD
Cygwin

(maar dat betekent niet dat de hele IDE daarop draait zoals op Linux)

En de hardware breidt uit naar ARM, ARM64, PowerPC64. (Raspberry pi!)

Er werden ook aanpassingen gedaan voor Hurd.
Read the rest of this entry »

Lift ^ | Lift v | Comments Off

Thuiswerktips voor programmeurs

Uitzending do 18:00 ** March 26th, 2020 by wim.webgang **

Zie video van zijn (Linux Foundation) thuiswerkplek.

https://itsfoss.com/torvalds-remote-work-advice

… rechtopstaande werkend aan hoge tafel. Maar hijzelf staat niet op de grond. Hij staat op een lopende band. Die zet hij heel traag, zodat hij wandelend kan werken.

Of er ook een biertje bijhoort na het werk zegt hij er niet bij …

Lift ^ | Lift v | Comments Off

Computermodel covid-19

Uitzending do 18:00 ** March 19th, 2020 by wim.webgang **

Het team van het Imperial College onderzocht infectie en overlijdensgetallen van de epidemie in China/Korea/Italie en stak die in een epidemisch simulatie model…

Ook het vervolg van de berekening van het computermodel voor de verspreiding van corona in de VS is interessant. Na de eerste maatregelen en het verminderen van de besmetting, en het weer opheffen van de maatregelen, zal er een volgende golf van besmettingen opsteken, en zullen de maatregelen terug verstrengd ingevoerd moeten worden, en zo een paar keer. Dat is logisch aangezien je door het afremmen maar een klein deel van de bevolking hebt blootgesteld. Pas als rond de 80 procent ermee in aanraking kwam kan je gerust achteroverleunen….

Jeremy C. Young op twitter:
https://i.imgur.com/pbWycWU.png
https://i.imgur.com/RmYPLxu.png

Muziek
18:19:29.799 sleepinghills – Muffled
18:30:48.951 intertec – Magic moment
18:39:13.881 stazin – eccentrics
18:58:17.117 Psilocybines – ADM-Belgium

Lift ^ | Lift v | Comments Off

uitzending nog onderweg…

Uitzending do 18:00 ** February 27th, 2020 by wim.webgang **

Lift ^ | Lift v | Comments Off

Tekenmarathon

Uitzending do 18:00 ** February 20th, 2020 by wim.webgang **

(nee niet de bloedzuigers)

Live uitzending vanuit de Academie van Antwerpen waar de tekenmatathon on/off doorgaat.

Een ruimte met echo met serieuze latency…

Lift ^ | Lift v | Comments Off

Reis rond de wereld

Uitzending do 18:00 ** January 30th, 2020 by wim.webgang **

LDraw deel 2: Reis rond de wereld

In 1996 startte er een grappig project om twee lego mannetjes de wereld rond te laten reizen, van AFOL naar AFOL zei de aankondiging. Volgens wikipedia staat dat voor Adult Fan of Lego, die hebben dus een eigen afkorting. In ieder geval zouden de mannetjes met de post reizen. Ze kregen ook een naam: Jill en Gary.
Het concept was dat die elke keer bij een Lego fan aankwamen, en opgesteld werden in of op een creatie van die euh AFOL. Die creatie heeft trouwens ook een afkorting, MOC (My Own Creation). Daar kon dan een foto van gemaakt worden, waarna de mannetjes konden doorreizen naar de volgende “AFOL”.

(Minifig World Tour: http://lego.sparre-andersen.dk/Transport/Minifig_World_Tour/index.en.html)

Van iedere creatie zou dan documentatie verzameld worden voor een community ideeënboek. Daarvoor moesten ze ook een bouwplan voorzien om hun creatie na te bouwen, en daarvoor werd LDraw aangeraden. Daarmee kreeg LDraw heel wat aandacht en verspreiding, en dus nieuwe gebruikers.

Ook anderen begonnen verder te bouwen op het LDraw formaat, dat zo een de facto standaard werd. Diezelfde periode bracht Steve Bliss een programma uit met de bescheiden naam LDraw-Add-on. Het was een hulpprogramma om de bestanden van LDraw te beheren en om LDRaw commando’s te geven.

Kortom, de toekomst van LDraw als snel groeiend platform zag er veelbelovend uit. Tot James Jessiman in de zomer van 1997 plots sterft aan complicaties van een griep. Hij was 26.

Vrienden van James hielden een memorial, en zijn werk speelde daar een belangrijke rol in. Ze besloten alles te doen om zijn werk verder te zetten.

bron: LDraw History

Lift ^ | Lift v | Comments Off

Bosvruchten en kunstige bouwblokjes van kunstof

Uitzending do 18:00 ** January 23rd, 2020 by wim.webgang **

MagPi 12
Raspberry pi magazine januari-februari; een greep uit de inhoud, met ondermeer Scratch Conference in UK, raspberry pi projecten als hergebruik van een professionele plotter en de Raspberry pi in de keuken, bv om een espresso machine of waterkoker te sturen.
Voor andere projecten kan je een kunstofdoosje kopen met nopjes bovenop om op verder te bouwen; of zelf je behuizing bouwen met die blokjes.
En als je een behuizing met speelgoed blokjes gemaakt hebt voor je raspberry pi, kan je het ontwerp of de bouwinstructies daarvan delen met LDraw.

Aflevering 1: James Jessiman

In 1995 heeft een jonge gast, James Jessiman, een DOS programma uitgebracht om 3D modellen te maken van bouwsels met kunststof bouwblokjes uit Denemarken. Het programma heette LDraw, en moest op de commandolijn bediend worden met ingetypte commando’s, zo’n beetje als bij de eerste CAD/CAM programma’s. Hij had evenveel tijd besteed aan het ontwerpen van de bestanden waarin de beschrijving van de blokjes en modellen opgeslagen werden, als aan het programma om ermee te werken. Net zoals een goed ontwerp de sterkte uitmaakt van de lego blokjes, en dat ontwerp eigenlijk het lego systeem uitmaakt, ontwikkelde hij een heel model, een heel digitaal systeem.
Hij had het bedoeld als een open systeem, dat in de toekomst uitgebreid kon worden. Daarom moest het bestandsformaat flexibel en uitbreidbaar zijn. Dat bleek achteraf belangrijk werk en een cruciale beslissing geweest te zijn.

Hij had er dus ook een hulpprogramma bij gemaakt, LEdit, om zelf blokjes bij te maken. Want oorspronkelijke waren er maar 3 blokjes voorzien, het vierkante blokje van 2 op 2, het tussenmaat blokje van 2 op 3, en het typische langwerpige steentje van 2 op 4 nopjes.

Lift ^ | Lift v | Comments Off

« Previous Entries Next Entries »