Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Programmeur maakt ide met MS Paint

Er zijn genoeg programma's die je kunnen helpen met het maken van software. Maar waarschijnlijk heb je er nooit bij stilgestaan dat Microsoft Paint prima als basis kan dienen voor een functionerende ide, een integrated development environment.

Programmeur Adam Yarris, alias Rubbaboy, heeft MS Paint IDE zelf geprogrammeerd. Op de officiële pagina en GitHub staat hoe het werkt. Het gaat om een applicatie die los draait van MS Paint en waarin de gebruiker kan aangeven op welke locaties de input- en output-afbeelding staan en naar welke map de compiler moet wegschrijven.

In MS Paint ingeklopte code is met het programma te compileren en uit te voeren. Daarvoor maakt MS Paint IDE gebruik van ocr. De output van zowel MS Paint als de ide-software verloopt namelijk via afbeeldingen. De applicatie zorgt voor syntax highlights en gebruikt Java's jdk om de code te compileren en uit te voeren. Daarnaast is er git-ondersteuning.

Volgens de maker zijn voordelen van zijn creatie dat MS Paint standaard al op veel systemen aanwezig is en het een lichtgewicht en robuust programma is. Daarnaast is het voordeel volgens hem dat afbeeldingen van de code eenvoudig te delen zijn.

Door Loïs Franx

Stagiair nieuwsredactie

12-09-2018 • 18:15

72 Linkedin Google+

Reacties (72)

Wijzig sortering
Nee hij maakt een 'ide' van elk programma dat een plaatje met tekst kan maken. Het interfaced totaal niet met Paint zelf.
Paint (en dus elke image editor) is helemaal geen IDE hier, er is niks integrated aan. Het enige wat je er mee kunt is tekst typen en dan nog slechter dan de gemiddelde textbox.

Alles moet buiten Paint om, en nog erger je moet alles in zijn tool doen.

Normaal ben ik wel een fan van onzin projectjes maar dit heeft geen enkel aspect wat het leuk maakt. Hij heeft een OCR tool die plaatjes inleest en kan genereren wat een JAVA compiler aan stuurt.

Het is omslachtig en hij heeft geen eens een leuk argument waarom (nee dat Paint standaard aanwezig is vind ik niet genoeg als je daarnaast nog een hoop andere zooi moet installeren).

Het komt niet verder dan omdat het kan.

Als hij nou Mario Maker of zo als editor gebruikte met OCR zou het een hogere fun factor hebben.
was ook mijn gedachte, paint kan je dan geen ide noemen, dan kan je kladblok dat ook noemen, dan kan je photoshop dat ook noemen. Sterker nog, dan kan je de snippingtool zelfs zo noemen.

Je hebt JAVA nodig en zijn tooltje dat plaatjes uitleest. Of mis ik nog iets?

Iedereen kan toch een OCR maken die plaatjes inleest en er teksten van bouwt? Zelfs met .net core zou dit makkelijk kunnen, dan kan je het ook praktisch overal gebruiken.
Volgens de maker zijn voordelen van zijn creatie dat MS Paint standaard al op veel systemen aanwezig is
Paint wel, maar Java? Dus je wilt aan de slag, dan moet je Java installeren en daarna nog zijn tootje. In plaats van gewoon enkel 1x een normale IDE.

Het heeft op zich nog nét een leuke ”omdat het kan”-factor, maar verder heb je er uiteraard echt helemaal niks aan.
Ja ik zat eigenlijk op hetzelfde te jagen.
Volgens de maker zijn voordelen van zijn creatie dat MS Paint standaard al op veel systemen aanwezig is en het een lichtgewicht en robuust programma is. Daarnaast is het voordeel volgens hem dat afbeeldingen van de code eenvoudig te delen zijn.
Je hebt alsnog een dependency op Java..die eigenlijk bij mij tegenwoordig niet zo standaard meer op de PC staat. Dus daar gaat zijn hoofd argument.

Daarnaast is het wel leuk en interessant om te zien, maar toch minder praktisch dan de developer omschrijft.
Of notepad, dat ook standaard aanwezig is..
JRE is toch wel vrij veel aanwezig denkik. Bundled installers of een keertje RuneScape en je hebt het zo.
Zakelijk gezien wordt Java vrijwel alleen nog geinstalleerd als het echt nodig is. Tegenwoordig is het meer een backend (server) taal
Dat, en voor Android development heb je het natuurlijk ook nog nodig. Neemt niet weg dat de gemiddelde pc-gebruiker het niet meer op z'n pc heeft staan.
Ik probeer het toch altijd te vermijden
Als er een tool / programma is die persé Java 'wil' ga ik in eerste instantie verder zoeken.

Java zit in mijn idee in dezelfde hoek als Flash en consorten ;)
Java heeft anders prima performance en is makkelijk. Voor Applets is het dood ja.

[Reactie gewijzigd door Cilph op 12 september 2018 19:03]

Java is een van de snelste talen onder de niet machine-gecompileerde talen. Vergeleken met python, ruby, php is het zelfs een orde van grootte. Javascript wordt bakken met geld naar gegooid dus daar ligt het wat dichter bij elkaar.

[Reactie gewijzigd door Cilph op 12 september 2018 21:16]

Naar de meeste legacy software wordt bakken met geld gegooid om nog te proberen het te ondersteunen. Is ook niet echt een reden om te zeggen dat Java snel is.

Snelste onder niet machine gecompileerd, is best een limitatie.

Daarnaast is het van Oracle, wat problemen geeft en kan geven. https://www.aspera.com/en...or-java-starting-in-2019/

We zouden beter af zijn als de wereld zich focust op cross platform compiling.
Dan hebben we Java/Oracle niet nodig en hebben we betere performance.
Naar de meeste legacy software wordt bakken met geld gegooid om nog te proberen het te ondersteunen.
Dat wordt echt niet gedaan vanwege performance.

Anyhow. Java voor desktop is dood. Mede dankzij Microsoft, mede dankzij idiote Oracle/Sun beslissingen. Aan de serverkant is Java en de JVM heel, heel populair voor de backend van webapplicaties. Hier is het een balans tussen ontwikkeltijd en snelheid en Java komt hier goed weg. Ik weet niet wat voor vooroordelen je verder hebt, maar Java heeft gelijke performance met C#. C# is ook immers begonnen als Java kloon.
Mijn ervaring met Java is ook trage software. Maar goed, ligt dat aan Java of brakke code van die specifieke software? Denk eerder dat laatste.
Het ligt toch echt aan java zelf. Enorm veel overhead. Iedereen die ooit een private minecraft-server heeft gedraaid zal dit kunnen beamen.
Dat is niet de overhead van Java die een MC server sloom en log maakt.

Een MC server heeft echt een bizarre hoeveelheid data te verwerken. Er zijn ook soortgelijke games met C-achtigen servertools en die draaien net zo log en bloated.

Er is gewoon een boel data te handelen en wat verwerkt moet worden voor alle spelers.

Mooi voorbeeld, het genereren van nieuw land voor een enkele speler trekt een sata verbinding vol. Het laden ervan een tiende. 20 spelers en je hebt voor world loads al tig duizend io mb/ps.
Wanneer heb je het voor het laatst gebruikt?
Welke applicatie was dat?
Met welke versie van de Java Runtime Environment had je die applicatie gedraaid?
Java is een respectabele programmeertaal, dat kan ik over flash niet zeggen. Ik heb op de uni geen vak 'programmeren in flash' gehad.
Klopt, maar dan op server en backends.
Op desktoptoepassingen is het ondertussen al voorbij gestreefd.
Met de juiste libraries is een klein programma in Java met een GUI maken niet veel werk, het kost weinig manuren, en het draait meteen op heel veel verschillende architecturen, ook op tragere computers. Het is een beetje een middenweg tussen low level a la C++ of heel high level a la Python, op de balans tussen veel manuren en hoge efficiency of weinig manuren en lagere efficiency.

Zie hierboven: Cilph in 'geek: Programmeur maakt ide met MS Paint'

Gezien zoveel applicaties tegenwoordig client server / cloud zijn vind ik het niet heel zinnig om een strak onderscheid te maken tussen lokale applicaties of web apps. Als je het zo bekijkt zijn sowieso bijna alle lokale applicaties dood (aan het gaan) behalve programmas die lokaal 3d moeten renderen.
MS Office is nu ook een web app met een optionele offline installatie.
Ook hebben desktop PCs tegenwoordig zoveel rekenkracht dat het niet rendeert om in Java te programmeren ipv de meest high level language die je kunt vinden, terwijl op servers gewoon elke clock cycle minder, geld bespaart.

Dat probleem lost zichzelf wel weer op, nog meer abstracte, higher level en daarmee minder efficiente languages worden mogelijk elke keer dat de hardware sneller wordt, tot we weer op het punt zijn waarop je met een paar kliks een desktop programma in elkaar zet wat niet elke pc kan draaien, en dan komt er weer meer vraag naar nog snellere hardware, etc. Daarin zal Java inderdaad steeds meer legacy worden.

Ik geef je dus technisch gezien gelijk dat Java voorbij is gestreefd voor lokale 2d applicaties, maar dit is simpelweg onvermijdelijk een consequentie van technologische vooruitgang, en is op elke taal van toepassing, zelfs op C en op Python.

[Reactie gewijzigd door Origin64 op 13 september 2018 16:28]

Dat slaat werkelijk nergens op.
De halve back-end wereld draait op Java, en is nog steeds een heel relevante taal/platform.
Wellicht dat je in de war bent met Java applets die in de browser draaien. Die technologie is nogal oud,onveilig en obsolete, maar komt dan ook bijna niet meer voor.
Dat slaat werkelijk nergens op.
De halve back-end wereld draait op Java, en is nog steeds een heel relevante taal/platform.
Wellicht dat je in de war bent met Java applets die in de browser draaien. Die technologie is nogal oud,onveilig en obsolete, maar komt dan ook bijna niet meer voor.
Fijn dat ik een eigen mening mag hebben over wat ik in gebruik heb ...
Als iedereen in de sloot springt, hoef ik dat toch ook niet te doen ?

Ik wil geen java installeren, alleen al omdat ze ongeveer om de dag gaan zeuren om een nieuwe update, als je niet uitkijkt er een hoop extra dingen meegebracht worden ( auto updates, schedulers en zelfs antivirus )

Ik heb géén enkel programma wat het nodig heeft, en nog niet een tegengekomen waar het puur noodzaak voor is
Misschien is de reactie van Edddoh iets wat heftig want eigenlijk zeggen jullie hetzelfde... Java is, naar mijn mening, geen taal waar je als eindgebruiker nog mee in aanraking wilt komen maar op servers (backend) is het alive and kicking (voor mijn gevoel vooral Enterprise)
Sinds Java 9 heb je ook jlink waarmee je een self-contained package kan maken met alleen dat deel van de runtime wat je applicatie nodig heeft; vaak een zeer minimale subset. Geen seperate runtime installatie meer nodig.
Ik heb géén enkel programma wat het nodig heeft, en nog niet een tegengekomen waar het puur noodzaak voor is
Ik ken er genoeg, maar zoals andere ook al zeggen vooral op servers.
Solr, Tomcat, Jboss, Glassfish om maar wat te noemen.
Maar ook genoeg commerciële software , wat op het boven genoemden weer draait.

Ja, JAVA kan traag, lastig etc etc zijn.
Maar om eerlijk te bekennen, ligt het meestal aan de ontwikkelaars. Dan aan JAVA zelf.
Je begrijpt Eddoh niet zo lijkt me. Vrij veel online software draait op Java, tevens zullen veel devs Java runnen omdat juist veel IDE's zoals Eclipse en Intellij bijvoorbeeld Java gebruiken.

Houd er ook rekening mee dat alle Android apps ook in de JVM (Java virtual machine) draaien. Standaard zijn android apps ook in Java geschreven.

Ook kan Java heel lichtgewicht in gebruiksmiddelen draaien (magnetrons en koelkasten bijvoorbeeld.)

Ofwel de kans is groot dat je indirect elke dag Java gebruikt. En eigenlijk is er niets mis mee. Enkel ye-olde Java applets waren echt onveilig.
hoop extra dingen meegebracht worden? dan download je het op een 1 of andere shady website met bundled installers. maar java wordt heel veel gebruikt op back end (jboss bijvoorbeeld), en dat heeft niks te maken met of jij java wel of niet installeert. java is véél meer dan alleen de jre die je op je pc installeert voor bepaalde programma's, wat de installer ook al zegt eigenlijk.

[Reactie gewijzigd door mjz2cool op 13 september 2018 09:42]

Ik denk anders hetzelfde. Programma's in Java duurden toen ik ze nog gebruikte eeuwig om te starten (Koffie-Logo betekent dat je genoeg tijd hebt koffie te halen) en zagen er lelijk uit.
Ik mis het niet.
Inderdaad, op de back-end, FreshMaker heeft het duidelijk over Java op de desktop.
Was er een tijdje terug geen bericht dat Oracle Java niet gratis meer aan zou bieden? Of er in ieder geval zoveel (financiele) haken en ogen aan geven dat Java alleen nog maar interessant is voor bedrijven die vanwege legacy niet over kunnen?

Gotere bedrijven mogen al gauw jaarlijks 15.000 euro neertellen voor iets wat ze al hebben.

Zo'n zonnige toekomst zie ik niet meer voor Java als Oracle hun plan doorzet. Oracle gedraagt zich zowiezo als een bloedhond wanneer het gaat over licenses van hun software en dat zal met Java echt niet anders zijn.
Die plannen zijn er niet, misschien bij wijzigingen aan de taal, vooralsnog gratis en hello world binnen enkele minuten :-)
Bronnen zoals dit:
https://www.aspera.com/en...or-java-starting-in-2019/

Overigens, al zou je bewijzen dat de bron onjuist is, dan is het alsnog een argument dat het kan gebeuren, en je daarom beter geen Java gebruikt.
Met de JRE ga je niet veel ontwikkelen gok ik.
Geen idee, zo jong ben ik niet. Ik heb in ieder geval niets op Steam en op het werk wat Java wil om te werken.

[Reactie gewijzigd door ItsNotRudy op 13 september 2018 10:31]

Electron is dan een typisch voorbeeld van luiheid :-). Dat is gewoon simpelweg een webframe met wat native API's. Maar op zich mooi aangezien we om die reden steeds meer in de browser kunnen.
Als je Windows10 draait mag je eerst MS-Paint opnieuw installeren.
nieuws: Microsoft verplaatst MS Paint naar de Windows Store

@wildhagen Ah. Bedankt voor de tip. Dat wist ik niet. :o

[Reactie gewijzigd door Technomania op 12 september 2018 19:06]

Ik heb paint de afgelopen jaren nog nooit uit de store moeten downloaden in mijn laatste verse install van 1803 zit die gewoon standaard in.
Dat klopt. Paint zit niet in de Store, het wordt gewoon mee geinstalleerd. Ook op de allerlaatste Inside Previews (dus post-1803) zit het er netjes standaard in.

Wel staat hij niet standaard in het startmenu meer (daar staat nu Paint 3D). Maar via Start -> Run -> mspaint start hij gewoon nog steeds op (en ja, dat is de classic Paint, niet de 3D versie) ;)

[Reactie gewijzigd door wildhagen op 12 september 2018 18:50]

Als je paint/mspaint in start intikt komt het ook te voorschijn. Run is voor pre-Vista :p
Protip: CTRL+SHIFT+N om een nieuwe map aan te maken.
Volgens de maker zijn voordelen van zijn creatie dat MS Paint standaard al op veel systemen aanwezig is en het een lichtgewicht en robuust programma is. Daarnaast is het voordeel volgens hem dat afbeeldingen van de code eenvoudig te delen zijn.
Haha. Makkelijker te delen dan gewoon de tekst van de code?

Leuk "omdat t kan" projectje. Maar hier ga je toch geen voordelen bij verzinnen die het bij lange na niet halen bij andere IDE's.
Makkelijk voor mensen die fotos van hun scherm nemen met hun mobiel :+
Ja heel goed idee dit, als ik dan een stroomschema teken wordt dat dan automatisch omgezet in code?
Valt wel een beetje tegen; je zou met wat reverse engineering en code injection iets veel gavers kunnen maken dat in Paint zelf draait ipv als losse applicatie. Meer een soort compiler met OCR nu.
In MS Paint ingeklopte code is met het programma te compileren en uit te voeren. Daarvoor maakt MS Paint IDE gebruik van ocr.
Vooral die laatste zin maakt duidelijk dat Paint dan dus niet de IDE is en je simpelweg elk grafisch programma wel kan gebruiken als IDE.

Meer dan een "omdat het kan" zie ik er eigenlijk ook niet in.
Notepad staat ook op elke Windows pc, dus is dat een logischere keuze. Ik snap niet waarom de moeilijke omweg via OCR is gekozen. Meer een proof-of-concept dan een serieus product.
Op zich wel nice als je enkel even mee kunt kijken en stiekem wat foto's kunt maken van code op een scherm :) Voor de rest vooral een gaaf nerdy ding "omdat het kan en blijkbaar niemand het nog gedaan heeft".


Om te kunnen reageren moet je ingelogd zijn


Apple iPhone XS HTC U12+ dual sim LG W7 Google Pixel 3 XL OnePlus 6 Battlefield V Samsung Galaxy S10 Google Pixel 3

Tweakers vormt samen met Tweakers Elect, Hardware.Info, Autotrack, Nationale Vacaturebank en Intermediair de Persgroep Online Services B.V.
Alle rechten voorbehouden © 1998 - 2018 Hosting door True