BelfaSoft – Lidt om hyggeprogrammering – Blot til lyst
Stock Manager
Et lille hjælpeprogram i mit daglige arbejde med at holde styr på lager, afsætning og indkøb. Salget pr. måned er en dynamisk størrelse, men samtidig bør der ikke købes ind for ofte pga. høje transportomkostninger. Det er tit sådan, at der er en vis mængde på lager samtidig med, at der flere varer i indkøb. Programmet hjælper til at skabe et grafisk overblik over lagerbeholdningen frem i tiden inkl. næste levering. Det fremgår også, hvornår en kommende bestilling bør effektueres for at være ‘up to date’. Der tages hensyn til et reserveret sample lager samt et bufferlager svarende til f.eks. en halv måneds omsætning. Det gælder om altid at have varer på lager, men uden at det er for mange. Et lille overlap er fint, da det giver ekstra sikkerhed.
Programmet er skrevet i C#/.NET
HiFi4Sale
Sidste skud på stammen mht. hjemmesidedesign. Formålet var blot at afprøve Surftown Creator, som er en nedskaleret (og ret fastlåst) version af WordPress. Whiskyklubben har tit været efter mig i forhold til at lave en ny hjemmeside til klubben, så nu har jeg i hvert fald taget de indledende knæbøjninger. Det bliver imidlertid ikke Surftown Creator, der får lov til at lægge værktøjskasse til pga. forskellige begrænsninger som f.eks., at det ikke er muligt selv at installere plug-ins – Og jeg skal i hvert fald bruge TablePress. Så der er nok ingen vej uden om en komplet WordPress installation. Har hørt at der kommer en ny v. 5.0 i foråret, som bla. indbefatter en ny editor, så måske jeg vil afvente den – Er sidenhen implementeret i WordPress 6.1.1.
Når jeg alligevel lavede siden, kunne jeg lige så godt reklamere for lidt hi-fi, som jeg pt. har til salg.
Er du interesseret kig da her: https://hifi4sale.dk/
Nøglepungen
Nøglepungen (KeyControl.exe) er inspireret af et program, der hed KeyKeeper, og som var lavet af Steen Hjelmstrand. En nyttig lille sag til at opbevare allehånde oplysninger såsom brugernavne, adgangskoder osv.
Programmet mistede desværre data fra tid til anden, og så var der nogle muligheder, som jeg savnede. F.eks. at kunne kopiere eller flytte en folder med data fra et sted til et andet. KeyKeeper, der var fra år 2000, var heller ikke fokuseret på datasikkerhed dvs. stærk kryptering. Endelig var det af ældre dato og tilpasset skærme med mindre opløsning, hvilket betød at al tekst blev lidt småt – Ikke optimalt, når jeg samtidig bliver ældre.
Mit eget program gav mulighed for at rette op på dette. Jeg ville gerne beholde den simple form fra KeyKeeper, nemlig med et to-delt vindue, ét med en træstuktur til venstre og ét med data hørende til den aktuelt valgte folder til højre. Desuden gav det mulighed for at tilføje ekstra funktionalitet som backup/restore samt eksport/import af foldere med data. Indførelse af 256 bit AES kryptering gav også den ønskede sikkerhed.
Programmet er skrevet i C#/.NET – Du er velkommen til at benytte det. Det kan hentes som en zip-fil, der indeholder selve programmet samt en brugervejledning.
Den nuværende version er 1.4 (2022), og der kan komme en opdatering, hvis der er en feature, jeg finder nyttig. Programmet kræver ingen form for installation, særlig placering eller medie.
Hent det her: https://www.dropbox.com/s/o4uqhepneopvuvk/KeyControl.zip?dl=0
Job´beren
I forbindelse med min jobsøgning, havde jeg brug for et sted, hvor jeg kunne gemme informationer om virksomheder, relevante kontaktpersoner, links til annoncer osv. samt at samle op på min egne aktivitet.
Det skulle vise sig, at det i det store og hele ikke var andet, end hvad jeg kunne gøre på f.eks. JobNet – Men det var da sjovt at lave det.
Programmet er skrevet i C#/.NET, og det er baseret på en lokal SQL database. Du er velkommen til at benytte det, selvom det nok ikke giver meget mening.
Hent det her: https://www.dropbox.com/s/ijyrpg864q7uc2h/Jobberen.zip?dl=0
Programmet kræver ingen form for installation, særlig placering eller medie.
ExcelCleaner
Jeg arbejdede et sted, hvor der var behov for at uploade lagerlister til forskellige sites, hvor der kunne findes/sælges/købes elektronikkomponenter. Det anvendte administrative system var Navision, hvorfra der kunne genereres en Excel-fil indeholdende en komplet fortegnelse over alle varer samt deres lokationer mv. Filen dannede grundlag for den interne lagerliste, men inden den kunne publiceres, skulle der fjernes en mængde varer fra lagerlokationer, der ikke måtte være generelt tilgængelige, ligesom visse kolonner skulle fjernes og endelig skulle de resterende kolonner omrokeres. Noget tilsvarende gjorde sig gældende for en ekstern lagerliste, der også var repræsenteret ved en Excel-fil. De to lagerlister skulle imidlertid ikke have helt samme format.
Sluttelig skulle der dannes både en xls og en xlsx udgave af listerne, da ikke alle sites kunne håndtere xlsx-formatet. Når lagerlisterne var færdige blev de uploaded til de respektive sites via ftp.
Ovenstående var en opgave som tidligere tog mange mandetimer, og derfor blev det kun gjort ca. hver anden uge. Nu tog opgaven højst 10 sekunder, og kunne dermed gøres til et dagligt gøremål.
En sjov lille opgave, der gav mig erfaring med at interface til Excel fra en C# applikation samt hvorledes ftp anvendes og integreres.
Programmet er skrevet i C#/.NET
MyClints
Programmet er lavet til min kone, der havde afsluttet en tillægsuddannelse som psykoterapeut. Hun sad så og nørklede med papirer og blyanter, når hun skulle holde styr på aftaler om terapi og supervisioner (et vist antal sessioner kalder på en supervision). Tilsvarende når hus skulle tage imod betaling – Og på sigt måske en momsregistreret virksomhed?
Der findes gratis programmer til hhv. regnskabsføring og til aftaler, men jeg kunne ikke finde noget, der kombinerede tingene på en måde, som kunne bruges i dette tilfælde. Så er der ikke andet for end selv at lave et program.
Det er imidlertid aldrig blevet færdigt, dels fordi min kone ikke har taget det i brug og dels fordi, at et regnskabsprogram forudsætter stor indsigt i regnskabsføring, hvad jeg ikke har – Og det interesserer mig heller ikke. Så skulle jeg fortsætte med at arbejde på programmet, skulle jeg have en slags kravspecifikation og regelsæt serveret. Nå, men det har været sjovt, mens det stod på, og det gav mig mere indsigt i anvendelse af databaser og SQL, så det har ikke været uden værdi 🙂
Programmet er skrevet i C#/.NET og er baseret på en lokal SQL database.
Skovlunde Psykoterapi
Dette er ikke et program, men en hjemmeside lavet til min søde kone i forbindelse med hendes uddannelse som Psykoterapeut. Den er lavet ved hjælp af applikationen iWeb på en Mac computer. At det lige blev iWeb var blot for at prøve det af, og så er det særdeles let at arbejde i. Synd at Apple stoppede udviklingen af det.
Besøg siden: https://www.skovlunde-psykoterapi.dk/Velkommen.html
Korrektioner på en TC monitor
Målingen af gennemtrængning af ilt fra huden på en TCM400 monitor indebar en vis unøjagtighed på målingen afhængig af temperatur og luftfugtighed. Det skyldtes sensorernes følsomhed over for disse faktorer. Disse faktorer kunne justeres, men brugeren kunne ikke se, hvilken unøjagtighed det gav anledning til samt korrektionsfaktoren. Det skulle udregnes manuelt af brugeren via givne formler. Så dette program var en lille hjælp til dette.
Programmet er skrevet i C++/MFC til WindowsCE
Whiskyklubben
Det blev min opgave at lave en hjemmeside, så vi i klubben kunne følge begivenhederne. Vigtigheden af dette voksede i takt med, at vi smagte flere og flere whiskies, især fordi det sædvanligvis ikke er tilladt at medbringe noget til et møde, som vi tidligere har smagt.
Siden er lavet i det hedengangne Microsoft Frontpage, men den står foran en ny implementering i WordPress.
Besøg siden: http://www.maltmates.dk/whiskyklubben/
CTMS – Styring af digitalt multimeter
I forbindelse med udvikling af arbejdspladser til laboranter, var der behov for at kunne måle på de enheder, der regulerede temperaturen i arbejdspladserne. Her blev anvendt et digitalt multimeter med to kanaler, der på forskellig vis kunne sættes op til måleforløb, der omfattede kanaler, temperaturer, sampletider, måletider osv. Kommunikation med multimeteret var et RS232 interface. Ideen var så, at man via programmet opsatte de ønskede målinger og efter start fik en realtidsvisning af data enten i nummerisk eller grafisk display. Samtidig blev data logget og kunne senere tages frem og analyseres.
Programmet er skrevet til DOS i Borland C og med anvendelse af biblioteket CXL (lavet af Mike Smedley). Dette var et shareware bibliotek, og det understøttede kun Small Memory Model på 64 KB – Det var noget af en udfordring med så lidt plads, men det lykkedes.
Jeg har desværre ikke andre billeder fra programmet, da det kun er den tekstbaserede del (herunder opsætning af målesekvenser), der kan køre under Windows 7.
Programmet var skrevet i 1993 til DOS i Borland C samt med brug af CXL lib (C Programmers Extended Library).
Visualisering af X-25 protokollen
Dette program blev til, da jeg sammen med en studiekammerat skulle lave en opgave i faget LAN under vores studietid. Formålet var at visualiserer kommunikationen i forbindelse med anvendelse af X-25 på lag 3. Man kan sige, at det var en slags bestillingsarbejde, fordi vores lærer ville bruge det i sin undervisning.
Programmet er skrevet i 1992 i Borland C og med Shareware biblioteket CXL til at støtte den menu og dialog baserede brugerflade. De besynderlige farver på åbningskærmen skyldes, at vi begge kun havde en sort/hvid skærm og derfor ikke klar over det farveladeprægede udseende. Det opdagede vi først ved demonstrationen i selve eksamenssituationen – Og det blev der grinet en del af.
MasterMind
Jeg havde lært spillet MasterMind at kende, og det syntes jeg godt om. Det involverer 2 personer, men den ene persons rolle er blot at vælge 5 farve samt for hvert træk at evaluere status. Det var derfor oplagt at benytte en computer til det. Først kiggede på nettet efter en implementering, men jeg kunne kun finde nogle tekstbaserede løsninger, og da jeg lige havde fået en farveskærm (ja vi er tilbage i 1992), var opgaven ligesom givet. En anden udfordring var så at lave en grafisk baseret udgave med inspiration i Microsoft Windows.
Programmet er skrevet til DOS i Borland C med anvendelse af Borlands indbyggede grafikbibliotek. I første omgang virkede det kun med anvendelse af keyboard, derfor har knapperne bogstaver og tal. Efterfølgende lavede jeg en musestyring i ASM, men jeg fik aldrig lagt det ind i programmet.
Ideen førte til, at jeg senere lavede jeg et objektorienteret (C++) grafikbibliotek til operativsystemet WxWorks. Her indgik også knapper, ikoner, input boxes, ListViews og meget andet sjovt.
Biblioteket blev brugt til at implementere brugerfladen på en NPT7 blodgas analysator.
Måling af minkpels
Programmet var en del af mit afgangsprojekt på Ingeniørskolen. Projektet var først tænkt som et rent softwareprojekt, men allerede i opstarten blev det til et kombineret software- og hardwareprojekt (10% / 90%), hvilket var helt fint – Mit linjefag var egentlig “Programmering af parallelle systemer”.
Det gik ud på at måle længderne af hårlagene (uldhår og dækhår) i minkpels via et optisk målesystem baseret på en He-Ne laser, fotodioder og en GaAs fotomultiplier – Med en opløsning på 0,1 mm. Min opgave var at konstrueret hardware til styring af målinger og opsamling af data samt software til præsentation af måledata.
Projektet kom desværre ikke i mål, men jeg læste mange år senere en artikel i ugebladet “Ingeniøren”, hvoraf det fremgik, at man stadig baksede med problemet uden at have fundet en løsning.
Programmet blev skrevet til DOS i sproget C
Lotto
Her er et gammelt program, så gammelt at det blev lavet og til en sort/hvid 14″ Philips Monitor. Det blev lavet i 1990 som en slags julesjov. Ideen var, at man kunne generere lottorækker med tilfældige tal. Desuden kunne man tilføje gevinstrækker fra tidligere spil og derefter genere rækker baseret på disse tal (de hyppigst udkomne tal). Det primære formål var at lege lidt med C-sproget, som var nyt for mig dengang.
Om der nogensinde er nogen, der har brugt programmet, endsige vundet noget via det, står hen i det uvisse – Der er i hvert fald aldrig faldet noget af på mig.
Og alt det andet …
Ud over de ovenstående er det blevet til et utal af småprogrammer, værktøjer osv. både til privat brug og i arbejdsmæssige sammenhænge. Men det er ikke noget jeg har gemt dokumentation på.