Foonsearch

Toevallig heeft Weerman de PDF-versie hiervan op zijn computer staan. Dat zegt, al in 2011:

cookbook

When to use Redis

Nearly every application has to store data, and often lots of fast-changing data. Until recently, most applications stored their data using relational database management systems (RDBMS for short) like Oracle, MySQL, or PostgreSQL. Recently, however, a new paradigm of data storage has emerged from the need to store schema-less data in a more effective way — NoSQL.

First things first, welke dappere dodo heeft O’Reilly op de omslag van deze titel en hoe wordt deze bereid:

Colophon

The animal on the cover of Redis Cookbook is a mouse opossum.

Wikipedia:

Aeneasrat

De aeneasrat is een kleine buidelrat. Hij heeft een korte, fluweelachtige vacht, die licht gelig tot grijzig bruin van kleur is. De buik is roomwit van kleur en rond de ogen bevindt zich een zwart masker. De grijpstaart is kaal.

De aeneasrat leeft solitair. Het vrouwtje duldt alleen een mannetje in haar buurt als zij in oestrus is. De paring kan meerdere uren duren.

Het recept? As a young man I lived on a dirt road in a three-room cabin allegedly built by lesbians:

Baked Possum

Melt butter in frying pan and add onion. When onion begins to brown, add chopped liver of possum and cook until tender and well-done. Add breadcrumbs, red pepper, steak sauce, egg, salt, and water to moisten mixture.

Stuff the possum with the mixture and sew up the opening. Put in a roasting pan, add 2 tablespoons water, and roast in moderate oven (300–350 degrees) until meat is very tender and a golden brown.

Baste the possum frequently with its own fat. When it is done, take from oven, remove stitches, and put possum on a hot platter. Skim the grease from the drippings and serve gravy in a separate dish.

As we said earlier, the questions boil down to what your data looks like and what your usage pattern is:

Don’t believe the hype

NoSQL databases such as Redis are fast, scale easily, and are a great fit for many modern problems.

But as with everything else, it is important to always choose the right tool for the job. Play to the strengths of your tools by looking at what you’re storing, how often you’ll access it, and how data (and its schema) might change over time.

Once you’ve weighted all the options, picking between SQL (for stable, predictable, > relational data) and NoSQL (for temporary, highly dynamic data) should be an easy task. Doing this kind of thinking in advance will save you many headaches in future data migration efforts.

No NoSQL:

Graph Data Structure

There are a lot of competing database structures out there, like document, tree, tabular, relational… it just seems to go on. But there is one structure that rules them all – the graph. With graphs, you can make any other data structure.

And it’s at the heart of Gun’s paradigm …

Introduction

GUN is a small, easy, and fast data sync and storage system that runs everywhere JavaScript does. The aim of GUN is to let you focus on the data that needs to stored, loaded, and shared in your app without worrying about servers, network calls, databases, or tracking offline changes or concurrency conflicts.

Distributed

GUN is fully decentralized (peer-to-peer or multi-master), meaning that changes are not controlled by a centralized server. A server can be just another peer in the network, one that may have more reliable resources than a browser. You save data on one machine, and it will sync it to other peers without needing a complex consensus protocol. It just works.

Offline-First

When a browser peer asks for data, it’ll merge the reply with its own data using a CRDT, then cache the result. This means that:

- The next time the browser asks for that data, the reply is instant, even when offline.
- Data is replicated on each browser that asked for it.
- If your server fails, you can still recover your data from the browsers.

Quick Start, Converse Tutorial, Build a realtime Chat App in minutes! Succes:

gun

GunDB, a.k.a Gun, a.k.a Gun.js:

GitHub - amark/gun: An open source cybersecurity protocol for syncing decentralized graph data.
https://gitter.im/amark/gun
Show HN: Gun v0.1.0 – The Easiest Database Ever | Hacker News
GunDB, Venture Backed and Decentralized with Mark Nadal (Changelog Interviews #236) |> Changelog
https://medium.com/a-weekend-with/a-weekend-with-gun-a61fdcb8cc5d
Data Modeling with GunDB

Killer app …

Zo aantrekkelijk en bijzonder dat mensen speciaal hardware kopen om die software te kunnen gebruiken:

Het gewicht van patiënten gaat vanaf 2020 rechtstreeks uit het bed in hun dossier.

Naar de maan en terug:

  bed

Erasmus MC, slimme bedden. Ook Eksel:

Microsoft Excel is een spreadsheet-programma van Microsoft en marktleider bij de rekenbladsoftware.

Brexel:

Microsoft Excel is a spreadsheet developed by Microsoft for Windows, macOS, Android and iOS. It features calculation, graphing tools, pivot tables, and a macro programming language called Visual Basic for Applications.

Exzel:

Microsoft Excel (abgekürzt MS Excel) (englisch [ˈmaɪ.kɹoʊ.sɒft ɪkˈsel], deutsch meist [ˈɛksl̩] oder [ɛkˈsɛl]) ist das am weitesten verbreitete Tabellenkalkulationsprogramm. Excel gehört zum Microsoft-Office-365-Abonnement[2] und ist sowohl für Windows als auch für macOS verfügbar. Die aktuelle Version für beide Betriebssysteme ist Microsoft Excel 2019.

Is, of was:

In accounting, a worksheet is, or was, a sheet of ruled paper with rows and columns on which an accountant could record information or perform calculations.

Was … Naar de maan en terug:

  calc

In 1979 zeggen ze. Huh, Apollo Moonshot, 1969, naar de maan en terug. Met en zonder trouwring:

     voor           na

Welke maan, terug naar af:

Het werd VisiCalc genoemd en werd geschreven om te draaien op Apple II computers. Lanceerde de concurrent Lotus 1-2-3. In dezelfde periode ontwikkelde Microsoft Multiplan maar omdat het moeilijk te gebruiken was werd in 1985 Excel geïntroduceerd voor gebruik op de Apple Macintosh.

Ruitjespapier:

In accounting, a worksheet often refers to a loose leaf piece of stationery from a columnar pad, as opposed to one that has been bound into a physical ledger book. From this, the term was extended to designate a single, two-dimensional array of data within a computerized spreadsheet program.

Ve-tsin, secret ingredient $E$621 uit de kantoortuin die umami wordt genoemd en diarree kan veroorzaken:

One advantage of such programs is that they can contain formulae so that if one cell value is changed, the entire document is automatically updated, based on those formulae.

In ieder geval geldt in die wereld, als je denkt dat het te breed wordt in Word dan in Excel:

  bool1

Dokter, en een slim bed even verderop. Sowieso probleem als je leidinggevende geen arts is? Opgelost:

Steganography with OOXML for Office (Zip)

I settled on using the Extra Field and Comment Field for injected data, since it works fine on most zip-dependent solutions (have not seen a case it does not work in), and MS Office is by far the most picky one. Other OOXML files created by OpenOffice for instance, are still zip files, and will thus also work.

Not, safe perfectly it is. Voor de zoveelste keer al gevaarlijke Chinese inmenging:

UK’s GCHQ has a tool named TORNADO ALLEY with this purpose.

Wikipedia in plaats van een Yoda-Speak simulator over Microsoft Excel inclusief noot 95 en verder:

Because Excel is widely used, it has been attacked by hackers. While Excel is not directly exposed to the Internet, if an attacker can get a victim to open a file in Excel, and there is an appropriate security bug in Excel, then the attacker can get control of the victim’s computer.

Hoi Weerman,

Jij hebt altijd wel goede inzichten over onderwerpen. Gundb gaf mij ook weer nieuwe inzicht. De Volkskrant denkt dat inzichten in ‘true’ en’ false’ uitgedrukt kunnen worden.

EEN PAAR OPVALLENDE PASSAGES:

Het internet begon in de jaren tachtig met verbindingen tussen mainframecomputers, de oude centrale computers.

Onjuist. Het internet vond zijn oorsprong al in de jaren zestig.

Ik ben bezig om mijn oude laptop van 8 jaar geleden uit te zetten en over te gaan naar een nieuwere van jaar oud. Probleem met de oude laptop was schijfruimte. Nu kan ik alles weer installeren. Ik heb nu ook dual boot. Linux gedeelte ga ik focussen op AI Tensorflow.

Met Windows gedeelte wil ik met QT aan de gang. Vooral Xtuple, npackd en pgmodeler proberen aan de praat te krijgen. Ik ben nu bezig om het Xtuple compiler/link recept aan het uitzoeken/begrijpen.

Ik heb naar mp3 geluisterd van de founder van GunDB.

Uit podcast kwam ik er achter dat rethinkdb niet meer operationeel was. Ik heb rethinkdb 29-07-2016 pas gezien. Ik vond ‘berichten pushen’ vanuit database richting de cliënt wel interessant. Ik zie in why-rethinkdb-failed dat onderwerp/richting gekozen was toen het al niet meer goed met het project ging.

RethinkDB pushes JSON to your apps in realtime.
When your app polls for data, it becomes slow, unscalable, and cumbersome to maintain.
RethinkDB is the open-source, scalable database that makes building realtime apps dramatically easier.

Als rethinkdb meer kans van slagen zou willen hebben, had men m.i. de tips uit “7 Secrets of Persuasion Only The RICH Know” kunnen gebruiken.

Puntjes uit why-rethinkdb-failed overgenomen, hopelijk kunnen wij daar wat van leren:

Timely arrival. They wanted the product to actually exist when they needed it, not three years later.

Ik wil sterk inzetten op Git en sshd om snel uit te kunnen rollen en gemakkelijk met anderen kunnen samenwerken. Ik zit nu bij Xtuple met oude distributies van QT te werken.

Pick a large market but build for specific users.

Is wel uitdaging. Decentrale concept kan je overal voor gebruiken, alleen waar begin je mee.

Learn to recognize the talents you’re missing , then work like hell to get them on your team.

In de xtupel iets inbouwen dat je een kennis die je nodig hebt makkelijk kan verwerven of samenwerken met deze kenniswerkers. Denk aan koppeling met Linkedin.

Read The Economist religiously. It will make you better faster.

Bij startup zie je niet het streven naar winst, maar meer naar marktaandeel. Lakmoesproef is of investeerders in de Startup willen blijven investeren.

Palpable speed. People wanted RethinkDB to be fast on workloads they actually tried , rather than “real world” workloads we suggested. For example, they’d write quick scripts to measure how long it takes to insert ten thousand documents without ever reading them back. MongoDB mastered these workloads brilliantly, while we fought the losing battle of educating the market.

Snelheid is altijd belangrijk. Anders haken gebruikers snel af.

A use case. We set out to build a good database system , but users wanted a good way to do X (e.g. a good way to store JSON documents from hapi, a good way to store and analyze logs, a good way to create reports, etc.)

Ik denk dat ik ‘use cases’ wel in Xtuple kan inbouwen. Bij use cases kan je beter op primair proces van bedrijf mikken, dan op ondergeschikte applicaties als tooling als rethinkdb.

Simplicity of the interface. We took on most of the complexity in the implementation, so application developers wouldn’t have to.

Ik ben meer van meerdere cliënt interfaces. Wel verbinding makend naar (dezelfde) sshd server, dus wel eenduidig API-protocol.

Consistency. We made everything from the query language, to the client drivers, to cluster configuration, to documentation, to the marketing copy on the front page as consistent as possible.

Consistency wil ik o.a. door de GIT code bewerkstelligen.

Correctness. We made very strict guarantees, and fulfilled them religiously.

Het is belangrijk dat resultaat goed wordt berekend.

recognizing good business people without having strong business intuition is about as hard as recognizing good engineers without having a strong intuition for engineering.

Klopt, Heb 8 jaar over mijn technisch bedrijfskundig studie gedaan, dus weet wat wel en niet belangrijk m.b.t. business. Deze kennis zoveel mogelijk in Xtuple inbouwen.

Ik kom toch achter dat ik meer met mijn studie wil doen. Integreren met mijn IT-HTS-achtergrond

De hartelijke groet Jan Marco

Meneer, iemand moet het toch doen, stofzuigen in dit gekkenhuis:

robin

Leuk, aardig en open, hij ook. Niet:

Bitcoin naar de maan! En terug

Powned zond donderdagavond de documentaire uit en er was maar een conclusie mogelijk: stop met school, geef je baan op en word rijk met 16 uur per dag staren naar een beeldscherm.

NOS nu daarover:

Veel schade door ‘bitcoin-advertenties’ met nepuitspraken BN’ers

Fraudehelpdesk - blijft raar klinken. Wat voor stichting? Stichting voor Brandwonden:

nos

NOS verder, dat deel is al opgenomen, Dordrecht, gaat Jezus taart verkopen voor het Laatste Avondmaal:

Finalist Heel Holland Bakt speelt kokkin in The Passion: ik dacht, ach kom, ik doe het gewoon

Staatscourant:

Mededeling van de Minister van Onderwijs, Cultuur en Wetenschap nr. 801624

Houdende de publicatie van de woordenlijst zoals op 12 juli 2015 vastgesteld door het Comité van Ministers van de Nederlandse Taalunie, Ministerie van Onderwijs, Cultuur en Wetenschap

Omdat sinds 1 juli 2009 de publicatie van de Staatscourant elektronisch geschiedt, is besloten de woordenlijst niet ter inzage te leggen maar langs deze weg integraal te publiceren:

    ...
    pannenlikker

Spelling …

Default value of the ‘spellcheck attribute’ is browser and element-dependant, ‘View Page Source’:

<title>
  Bedrijf Connect: vertrouwt bellen via uw huidige verbinding | KPN Zakelijk
</title>

Zij vertrouwen bellen via mijn huidige verbinding wel:

balk

Informatie en Bestelen, ‘stock image’-miep die kennelijk ook voor andere bedrijven werkt:

isdn

Our Team bij De Koninklijke, cheapie, cheapie:

- someone who loves to catch man’s attention.
- someone who’s sooo flirty just kissing anyone randomly

Hallo, met wie spreek ik?

kpn

Of KPN mij vertrouwt. Aangetekend aan “De directeur eigenaar”:

logo

ISDN STOPT

Wij bellen u voor een afspraak

Geachte heer/mevrouw,                                                                                                       1 april 2019

ISDN stopt over enkele maanden. Om uw bereikbaarheid te garanderen zetten wij nu uw huidige ISDN over naar een nieuwe oplossing op een toekomstzeker netwerk. We bellen u binnen 2 weken voor een monteursafspraak.

In 4 maanden tijd 11 poststukken, een keer of vier, vijf koud bellen en ze zijn het zat bij KPN.

Maar nu kan wat eerst niet kon:

Uw telefoonoplossing wordt omgezet

Wij zetten uw huidige ISDN-abonnement om naar het nieuwe abonnement KPN Bedrijf Connect.
Op uw locatie installeren wij kosteloos een kastje en zorgen voor een naadloze overstap. Aan uw huidige telefonieoplossing verandert niets en uw abonnementsbedrag blijft gelijk aan uw huidige ISDN-abonnement. De eenmalige kosten en de installatie van het kastje zijn voor onze rekening. Wij leveren deze nieuwe oplossing met een maandelijks opzegbaar contract, waardoor u nergens aan vast zit.

Wij regelen het voor u

De omzetting is zo gedaan. Vanaf week 17 kan onze monteur de ISDN-lijn(en) bij u omzetten.

Toekomstzeker:

De nieuwe elektronische snelweg: het ISDN

Halverwege de jaren ’90 stond telecomland op zijn kop toen er via hetzelfde koperen netwerk een digitale variant beschikbaar kwam waarover verschillende diensten tegelijkertijd gebruikt konden worden: het ISDN. Het ISDN zorgde voor een revolutie. Plotseling konden zowel consumenten als bedrijven telefoneren, internetten en faxen op hetzelfde moment. De capaciteit van de kabel wordt met ISDN beter benut waardoor de datasnelheid en de betrouwbaarheid van de diensten aanzienlijk hoger ligt …

Halverwege de jaren ’90. Zijn meteen ook de eerste jaren van XS4ALL en Planet Internet:

Bij KPN deugde niets, zei je net. Verwaayen wel?

Monteurs van zestig jaar werden door jongens van ons van 19, 20 jaar bijgeschoold. Prachtig vond Verwaayen dat. Het ging soms wel hard tegen hard bij KPN op een lager niveau, zoals met de overgang van de gewone telefoonlijn naar ISDN.

Gaan we weer, kan echt niet:

is4all

Over een jaar of twee, he, aangetekende brief van KPN, voor uw XS4ALL-abonnement verandert er niets.

Hoi Weerman,

>Meneer, iemand moet het toch doen, stofzuigen in dit gekkenhuis:

Mijn carrière is ‘als nachtkaars uitgegaan’ zegt iemand van het ‘mobiliteitscentrum’. :disappointed_relieved: Komt m.i. doordat je geen actieve keuzes hebt gemaakt. Mogelijk dat een AI-Assistent daar in toekomst medewerkers wel in zou kunnen faciliteren.

Ik ben eigenlijk niet kapot van QT want het is o.a. een erg groot framework, maar het is denk ik wel het beste voor een (open source) grafisch GUI programma. Sinds paar dagen druk bezig met scripts om QT automatisch te compileren. Ik wil GUI programma tegen QT (LTS, standard support until 2021) versie 5.12 linken.

Qt is a very powerful cross-platform C++ library with a lot of useful modules and classes. With Qt, you can create rich GUIs, perform networking activities, accessing databases and much much more. If Java is “write once, run everywhere”, Qt is “write once, compile everywhere” which is not that bad either.

Xtuple gebruikt WebKit, deze is verwijderd uit de QT-distributie. Mijn keuze is om alles wat niet werkt tegen LTS 5.12 versie uit te zetten en proberen te poorten.

Here are a few examples of what will change: The underlying WebKit JavaScript engine will be replaced by Qt WebEngine (Qt has deprecated Qt WebKit), most of the script toolbox object will be removed (there are better ways to do things), and we expect to expand the use of Qt Properties instead of method calls ( var _id = widget.id(); might become var _id = widget.id; ).

Ik denk dat Xtuple hoofdprogramma zo kaal is omdat met javascript gebruikt. Ik heb WebJavascript Kit uitgezet. QT gaat over naar een Chrome-oplossing als ik de documentatie goed begrijp.

This repository contains the source code for the Desktop extension to the Desktop client. The Desktop package, written in JavaScript, adds graphical navigation to the Desktop client and can be used with any edition of xTuple ERP.

Ik probeer de hoofdschermen van andere QT programma’s te integreren met het kaal Xtuple hoofdprogramma wat ik nu heb:

Wat ik leuk vond van Xtuple is dat als je het land “Nederland” kiest je de Nederlandse provinciën kan kiezen.

Ik ga de netwerk interface uit QT GUI-programma’s proberen te halen en deze verplaatsen naar de sshd.exe omgeving. Ik zie dat iemand iets heeft gemaakt om te verbinden met WhatsApp:

Starting the WhatsApp Web session happens by just connecting to one of its websocket servers at wss://w[1-8].web.whatsapp.com/ws ( wss:// means that the websocket connection is secure; w[1-8] means that any number between 1 and 8 can follow the w ). Also make sure that, when establishing the connection, the HTTP header Origin: https://web.whatsapp.com is set, otherwise the connection will be rejected.

Bovenstaande is nogal experimenteel, maar wel leuke oplossing om naar te kijken. N.B. Ik zie de Node.js Api Server als sshd.exe server. De specifieke Python backend WhatsApp interface proberen in sshd.exe proberen in te bouwen.

De hartelijke groet Jan Marco

P.S. Xtuple logt via window in database Postgresql in. Ik wil deze inlog window laten inloggen in sshd.exe (“pinnode”) programma. Je logt in een (PIN-node) service in. Onderliggend gebruikt deze service een Postgresql database.

Ah, je hart gaat sneller kloppen als jij twaalf provincies kan uitklappen? Hier dan, helemaal uit 2007:

www.opendata-forum.nl/t/postcodekaart/255/2

Voor het perfide beloningssysteem ingebouwd in de software voor dit ‘Discourse’-forum maakt dat niet uit:

Discourse - Civilized discussion - Amazing features your community will :cupid:

Badges

Encourage positive community behaviors through the included set of badges, or add your own custom badges.

Werd af en toe naar doorgeklikt. Hup, sterretje voor Weerman:

hotlink

Wie wat bewaart heeft wat, allang van de Geodan-site afgehaald, alleen nog via het Web Archive te zien:

Geodan, Nederland Postcodekaart

postcodekaart

Deze software misschien? QT-compatible, Commercial Use, Price £ 999, Buy now with PayPal:

WebKitX ActiveX for CEF3

This is a Visual Studio C++14 MFC/ATL ActiveX that wraps Chromium Embedded Framework (CEF3) for use with OLE/COM languages. Chromium Embedded Framework encapsulates WebKit Blink HTML5 Renderer and Google V8 JavaScript VM Engine. This is a production-grade stable component for commercial use that will truly add HTML5 features in your Desktop and Terminal Applications.

Kan het WebkitX-‘trial’-ding zich hier even nuttig maken en deze namaak Geodan postcodekaart ‘renderen’:

<html>
    <head>
        <title>Postcodekaart Nederland</title>
    </head>
    <body>
        <strong>&nbsp;&nbsp;&nbsp;Postcodekaart Nederland</strong>
        <iframe style="float:left" name="kaart" src="postcodekaart.png"
            width="625" height="700" frameborder="0" scrolling="no">
        </iframe>
        <a href="postcodekaart.png" target="kaart">Nederland</a>
        <a href="postcodekaart_zaandam_alkmaar.png" target="kaart">Alkmaar</a>
        <a href="postcodekaart_almelo_enschede.png" target="kaart">Almelo</a>
        <a href="postcodekaart_amersfoort_almere.png" target="kaart">Almere</a>
        ...
        ...
        ...
        <a href="postcodekaart_breda_tilburg.png" target="kaart">Tilburg</a>
        <a href="postcodekaart_utrecht.png" target="kaart">Utrecht</a>
        <a href="postcodekaart_zaandam_alkmaar.png" target="kaart">Zaandam</a>
    </body>
</html>

Had je gedacht:

webkitx

Hoi Weerman,

Vandaag naar een alternatieve versie van Xtuple gekeken namelijk OpenPapyrus. De handleiding is 1365 pagina’s. Heb ik vanuit Russisch vertaald naar Nederlands met Google translate.

The enterprise management system OpenPapyrus

The developed system for management of small and medium enterprises. It includes a very extensive functionality of ERP, CRM, Point-Of-Sale. Perfectly operates in the following business segments:

  • Wholesale
  • Retail
  • Pharmacy
  • Restaurants and cafes
  • Beauty salons
  • Fitness clubs

One of the best in its class systems in the Russian market. It supports a large number of types of equipment and is able to interact with a variety of popular systems.

Programming Language: C ++

Het programma heeft nog probleem met fonts/charactersets zie ook. Op deze pagina wordt ook aangegeven dat ze een Engelse menu versie hebben.

We have an experimental iterface translated to english. And will include it in release in nearest time specialy for you as soon as you the first who have asked about it.

De hartelijke groet Jan Marco

JM, applaus voor jezelf. Hier, als ontspanning een wat luchtiger VN-artikel over het handwerk:

Vrij Nederland - Hacken down the rabbit hole - 28 april

Lees ook de kick-off van deze serie, waarin Gerard vertelt waarom hij een jaar uittrekt om zichzelf te leren hacken: ‘Al langer ben ik gefascineerd door hackers: onopvallende personen die met een laptop beschikken over superkrachten.’

OpenPapyrus, het lijkt gewoon spul voor kassasystemen:

content

Система управления предприятием OpenPapyrus

Развитая система для управления малым и средним предприятием. Включает очень обширный функционал ERP, CRM, Point-Of-Sale.

Github:

papyrussolution/OpenPapyrus:

Sophisticated ERP, CRM, Point-Of-Sale, etc. Open source now. This system is developed since 1996.

Weet een Rus dat wel, ‘papyrus’ is een beetje muf als naam? Helemaal niet:

github.com/search?q=papyrus => 564 repository results 

Elke dag weer wat bijleren:

github.com/search?q=papyrus&l=Papyrus&type=Repositories => 37 repository results 

Papyrus blijkt onder andere ook een scripttaal voor gamers, Skyrim en Fallout 4 zie ik genoemd worden:

HavokKiller

Kill Havok by attaching script to an object.

OnActivateArmor

Add a piece of armor to the player’s inventory and display a message upon activation of a primitive or activator.

Enzovoort. Het bekende werk, net echt, onderling hebben zij het dan over ‘mods’ of wat?

hex

Echt niet, hier is serieus aan gewerkt. Bij Github zijn bijvoorbeeld deze projecten gestald:

- JSON-based data structures for Papyrus (TESV Skyrim scripting language)

- Initial SKSE Plugin to expose OpenVR to Papyrus

- A PEX to Papyrus Decompiler for Fallout 4

- A compiler for the Papyrus scripting language used by the Creation Engine.

- A Notepad++ plugin for Papyrus

- Papyrus LLVM compiler

Nou, om met Zeeuws meisje te spreken, ik moet weer gaan hoor! Jij zat op 164 woorden, ga ik jou niet ove

Hoi Weerman,

JM, applaus voor jezelf. Hier, als ontspanning een wat luchtiger VN-artikel over het handwerk:

Haha, hacken is m.i. een professie. :wink: Je ‘kan’ dit niet aan anderen vragen, maar je moet zelf opzoek gaan naar de kennis, die o.a. op internet te vinden is. In verleden leerde je iets door op een officiële cursus te gaan. Tegenwoordig kijk je naar Youtube filmpjes hoe iets werkt.

Deze software misschien? QT-compatible, Commercial Use, Price £ 999, Buy now with PayPal:
WebKitX ActiveX for CEF3

In mijn beeld maak je een cliënt voor een end-node van uit de QT-source code. Daarom niet veel gebruikers, dus heb je m.i. geen commercial license nodig van QT. Open source versus geld verdienen blijft altijd wel issue bij de projecten. OpenPapyrus maakt denk ik via ingebouwde dlgdsn.exe de menu’s aan. Mogelijk heeft deze oplossing minder schijf ‘footprint’ heeft dan QT. Menu’s zien er wel wat minder uit. Lijkt beetje op de ‘GTK schermpjes’ van Linux vroeger.

OpenPapyrus, het lijkt gewoon spul voor kassasystemen:

Het systeem (OpenPapyrus) is gericht op kleine en middelgrote ondernemingen die actief zijn op het gebied van groot- en detailhandel, industrie, openbare catering, enz. Het is bedoeld voor het bijhouden van boekhoudkundige en grondstofaccounting bij de onderneming, evenals het beheren van gepersonaliseerde boekhouding. Het systeem is gemakkelijk te gebruiken, het heeft voldoende mogelijkheden voor het invoeren, opslaan en verwerken van informatie, het voorbereiden van allerlei soorten rapporten. Het systeem kan worden gebruikt door bedrijfsleiders, economen, accountants, grondstoffenwetenschappers, kassiers, enz.

Mogelijk dat ze geld met kassystemen verdienen. Ik zie ook bovenliggende aspecten. Goederen, inventaris, rapporten maken.

Ze hebben veel libraries die ik ken:

Ik zie ook Redis, Soap, Btrieve, DL200

Openpapyrus_directories

Ik kan makkelijk Russisch vertalen in Nederlands met Google translate:

Gaat om de logica. De logica kan ik ook de kale Xtupel QT client versie ‘poorten’.

Rtlnieuws geeft aan dat Google 90% marktaandeel heeft en Youtube 5%.

Facebook (Messenger en WhatsApp) heeft m.i. de berichtjes-markt in handen.

Ik ben meer voorstander van programma die meerdere channels aankan, zoals Messenger, WhatsApp, etc.

Daarnaast werkt Facebook aan een ‘lichtere’ variant van Messenger. Deze app zou binnen twee seconden opgestart moeten zijn en op een smartphone 30 MB aan opslagruimte in beslag nemen.

Ben beetje opzoek geweest naar onderliggende technieken die Messenger gebruikt. Ik zag dat ze deel van MQTT geïmplementeerd zouden hebben.

Eclipse Mosquitto
Eclipse Mosquitto is an open source (EPL/EDL licensed) message broker that implements the MQTT protocol versions 5.0, 3.1.1 and 3.1. Mosquitto is lightweight and is suitable for use on all devices from low power single board computers to full servers.

The MQTT protocol provides a lightweight method of carrying out messaging using a publish/subscribe model. This makes it suitable for Internet of Things messaging such as with low power sensors or mobile devices such as phones, embedded computers or microcontrollers.

The Mosquitto project also provides a C library for implementing MQTT clients, and the very popular mosquitto_pub and mosquitto_sub command line MQTT clients.

Een andere oplossing:

Eclipse Paho MQTT C++ Client Library
EclipsePaho MQTT C++ client library on memory-managed operating systems such as Linux/Posix and Windows.

This code builds a library which enables C++11 applications to connect to an MQTT broker to publish messages, and to subscribe to topics and receive published messages.

Both synchronous and asynchronous modes of operation are supported.

RetroShare zie ik beetje als een opensource variant van Facebook in QT gebouwd:

Connect with Friends and Family
Retroshare establish encrypted connections between you and your friends to create a network of computers, and provides various distributed services on top of it: forums, channels, chat, mail… Retroshare is fully decentralized, and designed to provide maximum security and anonymity to its users beyond direct friends. Retroshare is entirely free and open-source software. It is available on Android, Linux, MacOS and Windows. There are no hidden costs, no ads and no terms of service.

What’s next?
Now that we have a API to talk to libretroshare, it is time to get into serious business. There’s a bunch of very interesting possibilities of what to do with it, including a social network that would run in a browser while talking to the RetroShare background application.

We introduce an optional distant synchronization of GXS groups ( e.g. a single Channel is a GXS group) that allows to sync subscribed groups using authenticated encrypted tunnels. With this technique, people can search, subscribe and synchronize groups that are not subscribed by immediate friend nodes.

The new search at the bottom of the channel list sends a query across the network and only reports channels that are not already advertised by friends nodes. When a new channel is reported, right click on it and hit “request data” to retrieve the full channel group (which means encryption keys, mainly).

When a hidden node is created or started, RetroShare will look for Tor (which it should find if properly installed on your system) and automatically configure it to run a hidden service which will be used by your friends to connect to you.

RetroShare is a platform that allows users to create a fully decentralized network with a high level of security, privacy and confidentiality. It offers a unique combination of features (File transfer, publishing channels, forums, distributed chat, asynchronous email,…) that provide users lots of ways to interact. Its generic nature allows to create new services based on an existing cryptographic and networking backend.

Overview of the Retroshare platform

  • Services offered by the application (FT, channels, forums, identities, etc)
  • Architecture (libretroshare + Qt UI, main components)
  • Motivation for a JSON API (use of RetroShare as a background library for decentralized communication, Android client, web interface, getting rid of old UI…)

The JSON API

  • Automated serialization
  • Automated JSON API code stub generation
  • Interaction, syntax
  • Authentication

Ik begrijp uit de presentatie dat Json Api toch grote voordelen zou hebben. Heb zelf nog niet zo veel ervaring met Json. Het is wel handig om zo te configureren dat we in lijn met de toekomstige ontwikkelingen (bv Json) blijven.

De hartelijke groet Jan Marco

Toch een ‘hit’ of twintig alleen al in dit forum:

site:opendata-forum.nl json - Google Suche

Deze bijvoorbeeld compleet met verwijzing naar w3schools.com:

Kan jaren goed gaan, niet in aanraking komen met JSON. Het isamelijk voor javascript-adepten:

1  · ingewijde in de geheimen van een kunst of wetenschap van een sekte
1a · (in ’t bijzonder) beoefenaar der alchemie
2  · (bij uitbreiding) iem. die de stijl, de ideeën van een leidend kunstenaar,
     politicus enz. navolgt

Beoefenaar:

JavaScript Developer - Amsterdam - € 5.000 - € 7.000 per maand - Voltijd, Onbepaalde Tijd

Interested to work for one of Amsterdam’s coolest scaleups?

Our client, an award-winning Scale-Up with a reputation for creating a forward-thinking SaaS Product used by globally-recognised brands, is currently looking for a Full-Stack JavaScript Developer on a permanent, full-time basis to work in their Amsterdam office.

Komt-ie:

Experience: JavaScript: 3 years (Required)

“JSON”, nee. Bij een vacature voor iemand in de bakkerij begin je meestal niet speciaal over gist:

Keywords - Node.js, Node, Nodejs, javascript, reactjs, react.js, reactjs, angular, angularjs, angular.js, vue, vuejs, vue.js, back-end, back end, backend, full-stack, full stack, fullstack

Laat je inwijden in de geheimen van een sekte, w3schools.com, tryjson_send:

<p>Convert a string written in JSON format, into a JavaScript object.</p>
<p id="demo"></p>
<script>
  var myJSON = '{"name":"John", "age":31, "city":"New York"}';
  var myObj = JSON.parse(myJSON);
  document.getElementById("demo").innerHTML = myObj.name;
</script>

Dat is handig, je kan de boodschap die daaruit komt door Google laten vertalen:

Преобразуйте строку, написанную в формате JSON, в объект JavaScript.

Джон

Is-ie niet lief:

cat

Snork, too busy IT professional:

What is JavaScript Object Notation (JSON) and how can you put it to work? This concise guide helps busy IT professionals get up and running quickly with this popular data interchange format, and provides a deep understanding of how JSON works.

Je kan dit aan anderen vragen bij Stack Overflow, SO. Why is JSON important?

  • I heard they were going to rename XML to OEML (Over Engineered Markup Language).

Ter zake:

  • What do you mean by ‘Javascript is available everywhere’? If I interface my Java application to a CouchDb instance, I have XML parsers natively available, but no Javascript parser

  • Everywhere in this sense means “on every computer (with a modern browser)”.

  • Note my example above - Java/CouchDb doesn’t involve a browser.

  • As I said it was an exaggeration. I mean from a Web app perspective, it’s available on roughly every client.

  • There are JSON parsers libraries for nearly every language out there. Check near the bottom of the json.org page (a majority of them are written in Java).

Geen wijsneuzen. Bij SO uitsluitend beheerste, zeer goed geïnformeerde bezoekers. Godswonder:

  • The heaviness is a misnomer. It’s really not significantly different than XML, and in simple cases XML can be smaller. In any case, size is not a clear distinguishing factor. The ubiquity is also not a clear factor. The only thing that remains is the javascript friendliness, the ability to eval() received json in a browser app. This is the differentiator and the one thing above all else that has powered adoption of json.

Maar vergat bijna erbij te zeggen:

  • eval() is also recommended against, since it can lead to XSS attacks.

Een heerlijk snufje zout op al je slakken:

  • I don’t agree that json is smaller. is the compact XML format. 44 chars. The compact json is: {person:{“name”:“John Doe”,“tag”:[“friend”,“male”]}} 52 chars. There’s a 25% difference, in favor of XML. XML can be larger, but need not be so.

  • I agree, hence my use of the word “generally”. Once you have arrays of complex items, XML becomes larger than JSON. Surely your misreading of the word “generally” isn’t worth a downvote?

  • Your compact JSON is incorrect, it should be {“name”:“John Doe”,“tag”:[“friend”,“male”]}. This makes it 45 characters, which is still larger than the XML but only by 1 character.

Ome Crockford zelf over zijn petekind:

JSON: The Fat-Free Alternative to XML

JavaScript is such a powerful language that the JSONT transformer is less than a page of code.

The characteristics of XML that make it suitable for data interchange are stronger in JSON.

  • Its simultaneously human- and machine-readable format;

This is true of both formats.

  • The self-documenting format that describes structure and field names as well as specific values;

This is also true of both formats, and it raises the question: If the format is self-describing, why is it necessary to have a schema?

  • The strict syntax and parsing requirements that allow the necessary parsing algorithms to remain simple, efficient, and consistent;

JSON’s syntax is significantly simpler, so parsing is more efficient.

  • The ability to represent the most general computer science data structures: records, lists and trees.

This is the most significant difference. While there are transformations which allow XML to express these structures, JSON expresses them directly. JSON’s simple values are the same as used in programming languages.

JSON’s structures look like conventional programming language structures. No restructuring is necessary. JSON’s object is record, struct, object, dictionary, hash, or associative array. JSON’s array is array, vector, sequence, or list.

Hoi Weerman,

  • Toch een ‘hit’ of twintig alleen al in dit forum:
  • Deze bijvoorbeeld compleet met verwijzing naar w3schools.com :
  • Kan jaren goed gaan, niet in aanraking komen met JSON. Het isamelijk voor javascript-adepten:

Iets lezen en weten dat het bestaat is toch anders dan goed begrijpen hoe het werkt of anders geformuleerd het JSON-concept gemakkelijk kunnen toepassen. N.B. Ik ben al meer met XML in dashboards bezig. Wil niet zeggen dat ik echt XML begrijp. Je kijkt naar andere dashboard voorbeelden die je met Google ‘opzoekt’.

Ik ben erg onder de indruk van RetroShare. Ze zijn helemaal op de decentrale tour. In mijn beeld moet je een optimale mix doen tussen decentraal en centraaloplossing. Centraal heb je (initiële) telefoonboekje met personen en bedrijven met hun PGP-keys die je synchoniseert met jouw vrienden.

Een generiek gegevensuitwisselingssysteem voor vriend-tot-vriend-netwerken
Samenvatting: Gedecentraliseerde private netwerken (of Darknets) beperken de beveiliging van informatie tegen massaspionage. Hoewel een aanzienlijk deel van de decentrale private netwerken bestaan ​​in de wereld van open source, zijn ze meestal gebaseerd op een architectuur "peer to peer" (P2P), waar directe communicatie waarschijnlijk om in te grijpen tussen alle paren knooppunt van het netwerk. Wij richten ons met name op de veilige distributie van gegevens in dergelijke netwerken "Vriend vriend" (F2F), waarbij elk knooppunt van het netwerk communiceert rechtstreeks met een vooraf vastgestelde lijst van vrienden nodes gecontroleerd met behulp van de gebruiker. Veilige gegevensdistributie op dit type netwerk vereist aangepaste algoritmen en privacymodel In dit rapport bieden wij een robuuste, veilige en schaalbare data distributie op F2F netwerken, het aanbieden van pseudo-anonieme identiteiten controleren ze door een reputatie systeem, dat in kringen van vrienden kunnen worden gegroepeerd kunnen worden gebruikt om de verspreiding van informatie te beperken. We presenteren verschillende applicaties op basis van dit systeem, met behulp van forums, distributiekanalen en asynchrone berichtenuitwisseling.

Bovenstaande heb ik vertaald uit het Frans m.b.v. Google-translate.

Je vrienden zijn eigenlijk een buffer tussen jou en de boze buitenwereld:

Zo hebben ze RetroShare opgebouwd. Met JSON API daarbij nadrukkelijk opgenomen:

Dit is de Public info die je van een peer opneemt. Issue is wel Location ID. In Cdfoon is dat natuurlijk ook opgenomen d.m.v. postcode en adres:

In het scherm kan je al beoordeling van iemand (lijkt mij dat dit een persoon of een bedrijf zou kunnen zijn) geven:


Naast “People” ook Product/Dienst button opnemen. Ik denk nog na of je “People” zou moeten vervangen door “Person” en “Company”.

Vanmiddag proberen om RetroShare te compileren in het QT-ecosysteem.
Ik denk wel dat ik Xtuple wel ga integreren met RetroShare. Je logt dan in Postgresql in. In toekomst wil ik dat naar Pinnode (sshd.exe) omleiden.

De hartelijke groet Jan Marco

P.S. Apart is dat ik geen mail buiten het RetroShare ecosysteem kan sturen.

Maar natuurlijk Jan Marco, kan me alleen niet aan de indruk onttrekken, toch een beetje teleurgesteld in je:

hond

En is het niet ook zo dat je anders naar je relatie gaat kijken als je je opeens realiseert dat de eerste date met haar waarschijnlijk ook via het zo populaire 'JSON data interchange format' tot stand kwam:

My love affair with JSON

For me, JSON (JavaScript Object Notation) is a delightful data sharing/transfer format to use. It is simple to use and read. It is very fast to process. It is also subset of YAML which is even easier to read.

Wel dienen de eerste tekenen zich al aan, hunkert opnieuw naar een ander:

Use YAML for JSONSchema definitions. Yes, YAML for JSONSchema definitions. YAML allows comments (JSON doesn’t) and is easier to read for humans.

Sterker nog, je kan je afvragen of hier geen sprake is van “veelwijverij”:

I’ve suffered through CSV, ASN.1, SGML, XML, and custom data formats of various flavors and cannot fully express my love for JSON here.

Goeie vraag. Ik ben altijd trouw gebleven. Delrina, jij hebt haar ook wel eens ontmoet.

Als bekend, met FAX CCIT Group 3 support. Erg makkelijk in de omgang:

/* Make the current image look OK as a 1-bit image */ 
nRet = L_HalfToneBitmap(LEADBitmap, HT_VIEW, 45, 0, NULL, 0); 
if(nRet != SUCCESS) 
   return nRet; 

/* Save the image as raw FAX. */ 
nRet = L_SaveBitmap(MAKE_IMAGE_PATH(TEXT("TMP.TIF")), LEADBitmap, _
       FILE_FAX_G3_2D, 1, 0, NULL); 
if(nRet != SUCCESS) 
   return nRet; 

/* Free the bitmap */ 
if(LEADBitmap->Flags.Allocated)    
   L_FreeBitmap(LEADBitmap); 

Dat jij daar trouwens niet op tippelde zegt ook wat, je bent te aardig :slight_smile:

Had het opzettelijk in kleine letters gehouden, “javascript”, meteen na mijn “JSON”-reprimande …

SO weer, gung-ho, is it JavaScript or Javascript?

  • JavaScript is trademarked by Sun, which is now Oracle. The true naming is ECMAScript but JavaScript is the well known name for it.

  • This is incorrect, JavaScript is not ECMAScript, it’s an implementation of ECMAScript, there’s a big difference there.

  • The letter case is not important for trademarks in US law, therefore JavaScript, Javascript, or even JaVaScRipT is a trademark by Oracle, see: tess2.uspto.gov.

Korte metten mee maken:

  • According to the RFC, the programming language is called JavaScript.

Is in een relatie een verhoogde frequentie niet ook significant? Oh Bert! Oh Delrina!

Al drie of vier dagen op rij steeds iets online gezet jij:

Wat betreft dat RetroShare, in het MaidSafe-forum - ja, eigenlijk het SAFE Network-forum natuurlijk - trouwens, even nog een weetje tussendoor, hun en onze forum-software (Discourse) is afkomstig van dezelfde geestelijke vader (Jeff Atwood) als degene die dat ook voor Stack Overflow concipieerde - maar goed, in dat forum dus keken ze ook licht onder de indruk naar RetroShare …

User @psecdocumentary in ‘Marketing’:

Non-Monetary Incentives For Joining The Safe Network

RetroShare is purely application-based (no web) and in order for the encryption to work at all (and RetroShare is entirely dependent upon its encryption for understandable and obvious reasons) your router has to have extremely good UPnP on board, otherwise its just not going to work properly, if at all.

Though custom router firmware options such as OpenWRT, DD-WRT, etc do solve the UPnP problem, the other problem is that there are still a great many routers that custom firmware platforms simply will not install to just yet. In the current economy, many people do not have the extra money to spare right now to get a good expensive router that will support this sort of thing.

Purely ‘application-based’ verklaart hoe het kan dat speciaal jij er naar kijkt? :slight_smile:

En ‘no web’ was jou ook opgevallen:

Het helemaal kortsluiten:

RetroShare using TOR and I2P would then also no longer need to worry about silly UPnP issues once they create their own plugins to route things through The Safe Network. They would then also be able to store data into The Safe Network and be able to have a website system of their own that co-exists on The Safe Network web, such as for example:

safe://my-website.ext
retroshare://my-website.rs

RetroShare would simply need to create a plugin that is able to communicate with The Safe Network web browser, simple as that.

Over MaidSafe nog: verder opgeschoven binnen de eerder door jou bekritiseerde overstap op ‘Rust’ :slight_smile:

Gisteren in dat forum, wat is dat toch met “quic-p2p”?

QUIC, Quinn & Crust: an update:

We’ll start off with a super quick glossary.

  • QUIC (Quick UDP Internet Connections) is a specification. QUIC is the solution to a number of transport and application layer problems. Whilst it’s very similar to TCP and TLS, it’s implemented on top of UDP.
  • Quinn is the crate we’re adopting QUIC from.

QUIC: A Brief History:

So where did QUIC come from? While we may not agree with their surveillance capitalistic practices, QUIC originated at Google — but stay with us. It was an experimental network protocol designed by Jim Roskind who worked at Google at the time. They deployed it across Chrome, YouTube and Search as well as other services to allow them to observe the protocol in action.

While we may not agree :

However, the version that Google developed is very different to how it looks today. From the wire format of the packets, to the handshake and the mapping of HTTP, QUIC grew organically thanks to open collaboration and a shared goal by many developers of making the Internet faster and more secure.

Hoi Weerman,

Al drie of vier dagen op rij steeds iets online gezet jij:

Ik heb week vrijgenomen om o.a. naar QT te kijken. Ik wil proberen de QT-GUI programma’s te compileren. Best wel een uitdaging. Verschillende recepten en ook een andere compiler platform ‘MinGW’ wordt vaak gebruikt. Als voorbeeld hiervan.

  • RetroShare;
  • Xtuple;
  • Npackd-cpp;
  • QtBitcoinTrader;
  • Pgmodeler;

’OpenPapyrus’ zie ik naast bovenstaande QT platform staan. Sobolev (van OpenPapyrus ) wil proberen OpenPapyrus m.b.v. autotranslation te doen vertalen naar het ‘Engels’ en de Nederlandse taal.

Over MaidSafe nog: verder opgeschoven binnen de eerder door jou bekritiseerde overstap op ‘Rust’

Eigenlijk doen ze hetzelfde bij MaidSafe, zij kiezen project dat in Rust implementatie heeft van het QUIC protocol. Het is m.i. voordelig om in hetzelfde habitat te blijven.

The Quinn crate is an open-source implementation of QUIC that has been developed in Rust (the programming language of choice for the backend of the SAFE Network).

Lijkt mij dat we wel naar (de ontwikkeling) van de talen moeten blijven kijken:

Purely ‘application-based’ verklaart hoe het kan dat speciaal jij er naar kijkt?

Ik vind de interface wel mooi. Alle basis aspecten zie ik terugkomen:

En ‘no web’ was jou ook opgevallen:
RetroShare using TOR and I2P would then also no longer need to worry about silly UPnP issues once they create their own plugins to route things through The Safe Network.

Was mij niet zo opgevallen dat ze erg op UPnp functionaliteiten van je router zouden rusten. M.i. is het meer verbindingen met je vrienden (via bijvoorbeeld tunnels, Tor , etc.)

Een plugin naar het Safe Network zou ook goede aanvulling kunnen zijn.

De hartelijke groet Jan Marco

JM, zo zijn we niet getrouwd, mij een tikkeltje te wild, dit geven:

Top Machine Learning Languages on GitHub

  1. Python
  2. C++
  3. JavaScript
  4. Java
  5. C#
  6. Julia
  7. Shell
  8. R
  9. Typescript
  10. Scala

En zeggen dat het over “Programming languages” gaat.

Andere manier van rangschikken bijvoorbeeld hier:

TIOBE index

TIOBE programming community index is a measure of popularity of programming languages, created and maintained by the TIOBE Company based in Eindhoven, the Netherlands. TIOBE stands for The Importance of Being Earnest, the title of a comedy play by Oscar Wilde that was first performed in 1895…

In datzelfde Wikipedia geen Nederlandse versie daarvan maar die heeft weer wel “Kaasmarkt”?

Akkoord maar daar bestaat ook een Engelse tegenhanger van, “Dutch cheese markets”.

Terug naar programmeertalen. Waarom wel, waarom niet daar een programmeertaal laten meetellen:

TIOBE Programming Community Index Definition

In this section it is clarified what counts as a programming language for the TIOBE index. There are 3 requirements that should all hold:

  • The language should have an own entry on Wikipedia and Wikipedia should clearly state that it concerns a programming language. This is the reason why (Ruby on) Rails, Excel, Android, Boost, Cocoa, ASP and AJAX are not considered programming languages for the index.

  • The programming language should be Turing complete. As a consequence, HTML and XML are not considered programming languages.

  • The programming language should have at least 5,000 hits for +“<language> programming” for Google.

Hallo Eindhoven? “Excel” geen programmeertaal?

Nee natuurlijk niet, net als het merk “Vim”, louter schuurpoeder.

Hoe goed is dan hun ‘ranking’ van de eigen lijst met daarin 250+ programming languages?

Hoe geselecteerd? In een onderverdeling naar ‘List of BASIC dialects’ staan al 350 items …

CodeLani - Here is the current list of the 3,156 computer languages I am actively tracking:

How Many Programming Languages are there in the World?

~7,099 spoken languages exist. But how many programming languages exist?

Spoken languages vary widely in popularity. For example. English has 1.5 billion total speakers and 375 million native speakers. Hawaiian, an endangered language, has only ~26,000 native speakers.

Similarly, some programming languages are very popular, others are used moderately, and many are completely abandoned. Java may be the most popular programming language, with approximately ~5.3 million LinkedIn users claiming it as a skill.

The number of programming languages in the world depends on the rules you establish for deciding whether or not a language counts. What do other people say?

TIOBE - 250

The TIOBE index is one of the best lists of popular programming languages and monitors ~250 popular programming languages. TIOBE tracks a programming language if it passes 3 tests: it must have its own Wikipedia page, it must be Turing complete, and a Google search for it must return over 5,000 search results.

Wikipedia - 700

Wikipedia has a list whose goal is to include “all notable programming languages in existence”, that currently lists over 700 programming languages. Wikipedia’s list excludes certain types of languages such as markup languages.

FOLDOC - 1,000

FOLDOC, a 90’s era online dictionary of computing, lists over 1,000 programming languages, though that includes aliases.

The Language List - 2,500

The Language List–started in 1991–tracks ~2,500 computer languages. The Language List includes popular languages as well as many “published languages”. If a language was published in a journal it may be on the list, regardless of its implementation history or popularity.

HOPL - 8,945

HOPL is a collection curated by Diarmuid Pigott. It lists 8,945 programming languages!

Hier als demonstructie de mei 2019 top-tien van die bewusteTIOBE-index

May 2019 May 2018 Programming Language Ratings Change
1 1 Java 16.005% -0.38%
2 2 C 14.243% +0.24%
3 3 C++ 8.095% +0.43%
4 4 Python 7.830% +2.64%
5 6 Visual Basic .NET 5.193% +1.07%
6 5 C# 3.984% -0.42%
7 8 JavaScript 2.690% -0.23%
8 9 SQL 2.555% +0.57%
9 7 PHP 2.489% -0.83%
10 13 Assembly language 1.816% +0.82%

Als tegengif, je ziet dat de helft van jouw wel zeer specifieke lijst niet in deze opsomming voorkomt.

Idem de All-Time-High bij TIOBE, The Importance of Being Earnest:

Programming Language 2019 2014 2009 2004 1999 1994 1989
Java 1 2 1 1 13 - -
C 2 1 2 2 1 1 1
C++ 3 4 3 3 2 2 2
Python 4 7 5 9 26 21 -
Visual Basic .NET 5 10 - - - - -
C# 6 5 6 7 23 - -
JavaScript 7 8 8 8 18 - -
PHP 8 6 4 5 - - -
SQL 9 - - 6 - - -
Objective-C 10 3 34 42 - - -


o/o

Hoi Weerman,

Mooie post over programmeertalen. Wat is een programmeertaal of niet? Boost, MFC dus niet volgens definitie die jij hebt gevonden.

pin node: c of c++, met scripting java python perl. niet teveel vreemde talen denk ik.

Vanmorgen met collega gehad over hoe je tegen windows aan moet kijken.

Microsoft will ship a full Linux kernel in Windows 10

For developers it should dramatically improve the performance of Microsoft’s Linux subsystem in Windows. Microsoft is also promising to update this kernel through Windows Update, and it will be fully open source with the ability for developers to create their own WSL kernel and contribute changes.

Microsoft also announced Windows Terminal today, a new command line app for Windows. It’s designed to be the central location for access to environments like PowerShell, Cmd, and the Windows Subsystem for Linux (WSL).

Shipping a Linux Kernel with Windows
When the WSL kernel source becomes available it will consist of links to a set of patches in addition to the long-term stable source. Over time, we hope this list will shrink as patches make it upstream and grow as we add new local patches to support new WSL features

Microsoft is adding native OpenSSH to Windows 10
Microsoft has been steadily making Windows 10 a lot more developer friendly, adding the bash command line, alongside Ubuntu, SUSE Linux, and Fedora Linux distributions. The software giant is now adding a native OpenSSH client to Windows 10

Het zou prachtig zijn als een open source linux gedeelte in WIndows komt. Lijkt mij goede aanvuling met de source code die ik al gesprokkeld heb.

De hartelijke groet Jan Marco

Jan Marco-san, weten niet. Hulp bij digitale vragen? Studentaanhuis. We hebben nog even tot Vaderdag:

Make the printer staple by default

Step one: Access the HP Embedded Web Server (EWS)

  1. From the Home screen on the printer control panel, touch the Network button to display the IP address or host name.

  2. Open a Web browser, and in the address line, type the IP address or host name of the printer exactly as it displays on the printer control panel. Press the Enter key on the computer keyboard. The EWS opens.

    NOTE: If the Web browser displays a message indicating that accessing the website might not be safe, select the option to continue to the website. Accessing this website will not harm the computer.

Step two: Set up Copy Settings

  1. Configure the copy options in the Copy Settings area. The following settings are available for configuration:
  • Collate

    • For printers that support print-job finishing, each set of copied pages are assembled in the same order as the original document.

      NOTE: If the printer has a stapler installed, select a staple option. To not staple the copies, select “None”.


Wiki.c2.com:

Turing Complete

The Turing machine is usually presented as a read-write head over an arbitrarily long (though finite) length of tape. At each position on the tape is recorded a symbol which the head can read and/or overwrite with a new symbol.

The machine’s programming is mainly determined by a set of states. At each tick of the Turning machine’s clock, the Turing machine reads the symbol recorded at its current position on the tape, writes a new symbol at that position (or possibly retains the existing symbol), moves the read-write head one position to the left or right (or perhaps remains at the current location), and determines the new state to be in at the start of the next tick (again, possibly the same as the current one).

One state is specially marked as the initial state; the machine begins a run in that state. Any number of states may also be marked as final states; the machine ends its run upon reaching one of those states.

HTML dus niet?

His credits include the creation of a naming scheme (URIs), a communications protocol (HTTP) and a language for webpages (HTML).

Dan is dit verwarrend:

Tim Berners-Lee honored with the 2016 Turing Award

The award, which is often referred to as the Nobel Prize for the computing industry, is present annually by the Association for Computing Machinery (ACM) to an individual who made “major contributions of lasting importance to computing.” It is named in honor of British mathematician and scientist Alan Turing and backed by a $1 million prize courtesy of Google.

Github:

Jonahss/Spreadsheets-Without-Macros

I recently had the thought that Spreadsheets might be Turing complete, and am assembling some examples of what can be done with Spreadsheets alone.

These examples demonstrate what can be done, and can hopefully serve as a learning tool for those who wish to learn in a visual setting about the way our computers work.

Aan de slag:

clock_a clock_b

Beperking:

OpenOffice.org Calc does not support iterative spreadsheets (which allow circular references) the same way that Microsoft Excel does, so I am forced to use one simple macro which increments one cell continuously.

It’s turing machines simulated using a reactive programming paradigm!

Het hulpstuk, ‘scheduled events’ met behulp van de Excel VBA Application.OnTime Method:

Sub Run()
   
  Set Age = Worksheets("GearsAndSprings").Range("Age")
  Age.Value = Age.Value + 1
  Application.OnTime Now + 1 / 86400, "Run"

End Sub

Hoi Weerman,

Wat ik leuk vond van criteria is of het wel of geen Wikipedia entry heeft. Wat ik vroeger heb begrepen is dat iedereen een entry op Wikipedia aan zou kunnen maken. Dus afhankelijk of iemand dat doet is het wel of geen officiële taal.

Gisteren met checken van Opencapyrus bezig geweest. Sobolev heeft Nederlands-Engels en Duits geloof ik ook aanpassingen in programma aangebracht. Je kan starten met ppw.exe /uilang:nl Probleem is dat er nog veel statische Russische Teksten in source code staan. Die na detectie van taal naar de juiste vertaling tonen is een hele leuke uitdaging.:yum: Ik zou het liefst voor database oplossing gaan., maar Opencapyrus gebruikt geen echte database engine (denk ik). Je ziet op internet ook wel dll-taal oplossingen.

Het programma ziet er m.i. wel prachtig uit. Voordeel is dat GUI veel minder zware footprint heeft dan QT. Maar QT oplossing zie ik wel als langer termijn oplossing. Ik kan in Opencapyrus de logica van ERP pakket leren en mogelijk dit gebruiken voor QT langere termijn oplossing. N.B. In combinatie met RetroShare geeft meer de toekomstige manier van zakendoen. Je werkt dan m.i. in channels met klanten en leveranciers.

In Opencapyrus zitten ook paar GSOAP koppelingen. In Nederland wordt ook door bedrijven en overheid SOAP gebruikt. Ik ben beetje aan onderzoeken, waar ik deze koppelingen kan vinden. Lijkt mij leuk om deze in ons Telefoonboekje op te nemen.

One would think that writing a client application using the Simple Object Access Protocol (SOAP) in Visual C++ would be a non-trivial task. SOAP interface calls are (more or less) human-readable text transported across HTTP, a ubiquitous Internet transport protocol. It should be a simple matter of putting together the proper data payload, wrapped in properly formatted HTTP and SOAP headers, and sending the message across the wire, taking into account SSL security. The reality is interacting with eBay using SOAP and C++ is not as straightforward as one might think.

This article describes the process for creating a basic application for interacting with eBay using SOAP in Visual C++. The application will retrieve the official eBay time from the eBay server using Visual C++ 2008, gSOAP, OpenSSL, and the eBay API.

This article will walk through the process of using gSOAP to connect with Amazon Web Services’ Simple Storage Service (S3). We will create a bucket and then upload an object to the bucket using a streaming DIME attachment.

gSOAP (website/SourceForge) is a toolkit that auto-generates SOAP and XML data binding for C and C++. It simplifies the development of SOAP/XML web services, and in our case, the consumption of existing Web services.

Amazon S3 is a web service that is used to store files. They offer a SOAP API, so we can easily use the gSOAP toolkit to generate code to interact with AWS S3.

Genivia is bedrijf die SOAP heeft verder ontwikkeld:

As developers ourselves, we fully understand the demands and challenges to implement modern Web services and REST APIs that must be fast, rock-solid robust, and super secure. Our gSOAP toolkit allows C/C++ developers to focus on application logic instead of infrastructure, resulting in reduced development time, fewer bugs, and faster time to market.

Weerman, Mogelijk heb jij ook ervaring met GSOAP? Lijkt mij leuk om via SOAP te gaan ontwikkelen in kader van de (RetroShare) channels. Mogelijk dat je producten kan kopen, bestellen, reserveren met GSOAP. Dit rechtstreeks van client naar (web)winkel/bedrijf/overheidorgaan. Maar ook afspraken maken met GSOAP in iemands zijn/haar agenda.

Weerman, Hopelijk heb jij wel visie/beelden hoe jij GSOAP ziet? Is het haalbaar om GSOAP daar voor te gaan gebruiken?

De hartelijke groet Jan Marco

Wilma! Waar is de Suprimal! Geintje, JM. Flauwe grappen van Weerman, vraag nu de gratis catalogus!

U vraagt, wij draaien:

Introduction

Whenever a new technology comes along, the whole technical community reaches to
grasp the details as well as the implications. If this technology represents a “sea change”
in the way that computers are programmed, the need to comprehend becomes a matter of
technical survival.

Web services represents a sea change. There have been other drastic changes in the computing
environment in the past few decades. Here are a few of them:

  • Stored programs replaced punch cards and paper tape.
  • Online systems largely replaced batch systems.
  • Graphical user interfaces replaced green screens.
  • Networked computers replaced standalone computing.
  • Internet-based systems replaced LAN-based systems.

In a year or two we will add the following:

  • Web services–based systems replaced simple Internet-based and LAN-based> systems.

One of the characteristics of a sea change is that it negatively impacts the employment
prospects of everyone who gets left behind. After online CICS became popular, batch
COBOL programmers had trouble finding work. DOS programmers went looking after
Windows was introduced. Client-server programmers found the going tough after
Internet-based systems became widespread.

Sams Teach Yourself Web Services in 24 Hours, First Printing: May 2003. Dat zal verklaren dat een boek dat over ‘Web Services’ gaat het begrip ‘REST’ (zie verder) nog niet kent?

Want ‘SOAP’ komt in de tekst op 840 plaatsen voor tegen ‘REST’ 63 keer, maar bij “rest” wil men in alle gevallen alleen iets zeggen over “rest of the staff”, “interesting proposals”, “restrict the user’s freedom”, “prestige in the marketplace” of “table in a restaurant”.

In bepaalde mate tijdgebonden technologie dus. Bij Stack Overflow zegt iemand, crossover in 2008:

trends

Of ga kijken bij een IT-boeken-uitgever, bijvoorbeeld Apress:

About Us

Apress, a Springer Nature company, is a publisher dedicated to meeting the information needs of developers, IT professionals, and tech communities worldwide.

Achtereenvolgens zoeken naar ‘soap’ levert Showing 42 results met daartussen “Pro RESTful APIs”.

En daarna ‘rest’, Showing 134 results Met daartussen weer die titel “Pro RESTful APIs:sunglasses:

Refine Search, Last 6 Months: Showing 2 results versus Showing 11 results.

Wat is dat met “Pro RESTful APIs”? Blurb Apress:

Discover the RESTful technologies, including REST, JSON, XML, JAX-RS web services, SOAP and more, for building today’s microservices, big data applications, and web service …

Wil je SOAP en REST naast elkaar gezet hebben, zie hier of hier . Anders gewoon maar de tabel uit dit boek? SOAP vs. REST comparision:

TopicSOAPREST
OriginSOAP (Simple Object Access Protocol) was created in 1998 by Dave Winer et al. in collaboration with Microsoft. Developed by a large software company, this protocol addresses the goal of addressing the needs of the enterprise marketREST (Representational State Transfer) was created in 2000 by Roy Fielding at UC, Irvine. Developed in an academic environment, this protocol embraces the philosophy of the open Web.
Basic ConceptMakes data available as services (verb + noun), for example “getUser” or “PayInvoice”Makes data available as resources (nouns), for example “user” or “invoice”
ProsFollows a formal enterprise approach. Works on top of any communication protocol, even asynchronously. Information about objects is communicated to clients. Security and authorization are part of the protocol. Can be fully described using WSDLFollows the philosophy of the Open Web. Relatively easy to implement and maintain. Clearly separates client and server implementations. Communication isn’t controlled by a single entity. Information can be stored by the client to prevent multiple calls. Can return data in multiple formats (JSON, XML etc.)
ConsSpends a lot of bandwidth communicating metadata. Hard to implement and is unpopular among Web and mobile developersOnly works on top of the HTTP protocol. Hard to enforce authorization and security on top of it.
When to useWhen clients need to have access to objects available on servers When you want to enforce a formal contract between client and serverWhen clients and servers operate on a Web environment. When information about objects doesn’t need to be communicated to the client
When not to useWhen you want the majority of developers to easily use your API When your bandwidth is very limitedWhen you need to enforce a strict contract between client and server. When performing transactions that involve multiple calls.
Use casesFinancial services Payment gateways Telecommunication servicesSocial media services Social networks Web chat services Mobile services
Exampleshttps://www.salesforce.com/developer/docs/api/ -Salesforce SOAP API https://developer.paypal.com/docs/classic/api/PayPalSOAPAPIArchitecture/ -Paypal SOAP API https://dev.twitter.com/ https://developer.linkedin.com/apis
ConclusionUse SOAP if you are dealing with transactional operations and you already have an audience that is satisfied with this technology.Use REST if you’re focused on wide-scale API adoption or if your API is targeted at mobile apps.

Zit niet in hun publieke uitleenservice:

WayBack Machine

Internet Archive is a non-profit library of millions of free books, movies, software, music, websites, and more.

Maar dat hoeft nog niet te betekenen dat je er niet elders op het Net even in kan bladeren:

Pro RESTful APIs - Design, Build and Integrate with REST, JSON, XML and JAX-RS

Chapter 3: Introduction - XML, JSON

This chapter introduces basic concepts about XML and JSON. At the end of this chapter
there is an exercise for environment setup.

Als je als oefening het door de auteur opgegeven huiswerk zou doen:

  1. Open browser and type in URL http://localhost:8080/lab1/rest/hello to see the results as below.

    hello

Jan Marco, als je toch met SOAP aan de gang wil dan zou “gSOAP” een ‘top-rated framework’ voor ‘C/C++ Web service APIs and XML’ zijn zie ik hier.

Hoi Weerman,

Je hebt mij erg geholpen met jouw reactie op mijn SOAP(/REST) vraag. Wat ik zie bij mijzelf is dat je termen wel eens van gehoord hebt, echter niet door hebt dat er mogelijk al veel koppelingen zijn die niet in 1 applicatie worden bijgehouden.

Ik kwam achter de GSOAP koppelingen door in de source-code van openPapyrus-ERP te kijken.
Openpapyrus heeft o.a. drie GSOAP koppelingen:

  • Korus (bier merk);
  • Heineken;
  • Pepsi.

Enterprise Management Systeem PAPYRUS
Het systeem is ideaal voor detailhandelaren (producten, apotheken, kleding, schoenen, gefabriceerde goederen), groothandelaren; restaurants, dienstverlenende bedrijven (schoonheidssalons, fitnesscentra, ziekenhuizen, enz.).

Het systeem is perfect aangepast voor netwerkactiviteiten met geografisch gescheiden objecten en kantoren.

Openpapyrus lijkt mij erg geschikt voor MKB. Die nog met Excel en een ‘schoenendoos’ naar de accountant gaan werken.Tevens geloof ik dat IT nog ‘niet zo goed is’ bij de ZZP-ers.

Ik zie op internet dat je ook SOAP koppeling naar Ebay zou kunnen maken.

Making a Trading API Call

To perform a particular task with the Trading API (e.g., list an item), you need to send a request using a call. The call names are fairly self-explanatory, like AddItem — which lists an item. The schema defines the messages that you can use to access the eBay database. The API uses request-response style operations.

This document explains how to make a Trading API call. It provides an overview of the formats and parameters you can use with the Trading API.

WQsEJ

Mijn voorkeur zou SOAP hebben als er ook MQ in zit om de SOAP berichten te storen.

Ik zie voor mij in de eindsituatie dat je in RetroShare een channel met SOAP of REST kan aanmaken naar een bedrijf, overheidslichaam of persoon.

For API’s REST makes sense because they are portable, simple to use, scalable, and easy to integrate with. For development of web services in general I am not so sure.

If the security is a major concern and the resources are not limited then we should use SOAP web services. Like if we are creating a web service for payment gateways, financial and telecommunication related work then we should go with SOAP as here high security is needed.

Vanmorgen kwam ik op idee dat mogelijk wel mooi is om Sqlyog (wat ik Voipe heb genoemd) te gaan migreren met Opencapyrus:

Ben aan nadenken hoe het beoogde samengestelde hoofdscherm er uit zou kunnen zien.

Denk aan:Home Reference Network Channel People Organization Product Service Operation Production Reporting Admin Help Quit

Ik kijk daarbij ook met half oog naar het RetroShare hoofdscherm. Op langere termijn lijkt mij QT (QUI) platform beter. Echter windows resource oplossing is makkelijkst te integreren. Ik hoef alleen maar twee resource files samen te voegen:

Tweede punt bij migratie is de code van Voipe mee te laten compileren in het project Opencapyrus. De code is helemaal uitgezocht, dus zou makkelijk moeten kunnen. Daarna heb je wel veel mogelijkheid om de ERP-data beter op te slaan in de database engine Mysql.

Korte termijn oplossing kan je veel bij leren om een betere langere termijn oplossing (QT en Postgresql) te gaan maken.

De hartelijke groet Jan Marco

Jan Marco, ik verval dikwijls in herhalingen? Hier, uit het oude forum, ik tegen jou in april 2004:

Blocks Extensible Exchange Protocol (BEEP)

If you need to design a protocol that really fits your application, you want BEEP – an integrated collection of building blocks that gives you best in class data transmission solutions for everything from framing to security. Whether youre writing a simple fetch client/server application or a multi-threaded peer-to-peer relaying system, BEEP provides the necessary functionality without extra overhead.

In een artikel een keer ‘BEEP creator’ Marshall Rose citeren:

“Engineers design protocols the way monkeys try to get to the moon that is, by climbing a tree, looking around, and finding another tree to climb.” (Marshall T. Rose)

En nog een keer citeren:

“You can Solve Any Problem… if you’re willing to make the problem small enough.” (Marshall T. Rose)

Vervolgens veel waardering uiten:

Das Netz der Zukunft: Protokollstandardisierung in der Sackgasse?

Genau das war das Ziel, als 2001 die IETF das Blocks Extensible Exchange Protocol (BEEP) veröffentlichte. Es wurde ein universelles Nachrichtenprotokoll geschaffen, das sich an viele Aufgaben leicht anpassen lässt. Mechanismen, die sich in Anwendungsprotokollen bewährt haben, wurden in BEEP integriert.

Auf dieser Basis können Entwickler ihre Interprozesskommunikation und Schnittstellen modellieren, ohne sich mit den Details der Übertragung auseinander setzen zu müssen. Komplexe Anforderungen wie Asynchrone Kommunikation, Kanäle und Flusskontrolle, stehen für eine skalierbare Kommunikation bereit.

Eine herausragende Eigenschaft von BEEP ist jedoch die Möglichkeit, eigene Profile zu entwickeln, die Syntax, Semantik und Kommunikationsmuster festzulegen und über eine einzige TCP-Verbindung bereitgestellt werden können. Es ist ohne weiteres möglich, HTTP, MQTT oder andere Protokolle als Profil nachzubilden.

Prozesse die sich verbinden, müssen nur einen Port kennen und erhalten eine Liste der zur Verfügung stehenden Dienste. Das Problem der Abwärtskompatibilität wird mit BEEP gelöst, indem zwei Versionen eines Profils gleichzeitig betrieben werden.

Met ook een schemaatje:

  beepstack

En dan een verstandig slotwoord zoveel jaar later:

BEEP ist vielleicht nicht die Lösung der Zukunft, jedoch zeigt der Standard (2001) wie eine generelle Lösung für das eigentliche Problem, den Austausch von Nachrichten, aussehen kann.

Wikipedia: Rose is presently the Principal Engineer at Brave (web browser).

Yay! In ‘Meet the Team’, vierde rij van boven, ‘Principal Engineer’ …