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

Door , , 84 reacties

De Microsofts Connected Systems-divisie is op zoek naar nieuwe collega's om een stuk software te bouwen dat omschreven wordt als 'Emacs.net'. Pas in oktober van dit jaar zal bekend worden wat de softwaregigant exact op het oog heeft.

Emacs-logoEmacs is een teksteditor die met name gebruikt wordt binnen de Unix- en Linux-gemeenschap, hoewel er ook versies van het programma voor Windows-systemen bestaan. De grondlegger van het programma is Richard Stallman, die bekendheid geniet als voorvechter van vrije software en als oprichter van de Free Software Foundation. Een van de sterke punten van het grotendeels in Lisp geschreven Emacs is dat de functionaliteit eenvoudig uitgebreid kan worden.

Microsoft heeft niet bekendgemaakt wat het bedrijf precies wil ontwikkelen, maar het is wel al duidelijk dat pas tijdens de Professional Developers Conference in oktober meer officiële informatie zal worden vrijgegeven. Het meest voor de hand liggend is een goed in PowerShell geïntegreerde .Net-versie van de Emacs-editor, zo verwacht blogger en voormalig Microsoft-medewerker Joel Spolsky. Volgens Miguel de Icaza, hoofdontwikkelaar van Mono, is de softwaregigant van plan om een Emacs-achtige programmeeromgeving te ontwikkelen, waarbij Lisp vervangen is door de .Net-talen.

Emacs-screenshot
Moderatie-faq Wijzig weergave

Reacties (84)

Dit zou wel 'ns een leuke editor kunnen worden. Veel ontwikkelaars in C# klagen over het voorkauwende karakter van Visual Studio. Heel veel WYSIWYG en drag'ndrop ontwikkelen is wellicht makkelijk en snel, maar voor long-term applicaties zeker niet de beste weg. Wellicht dat dit project een uitkomst moet bieden voor dergelijke ontwikkelaars. Al is het maar voor het gevoel wat de ontwikkelaar bij de IDE heeft.. :)
Je zou toch verwachten dat die 1337 devs die zo'n hekel hebben aan visual designers, WYSIWYG editors en IntelliSense wel weten dat je dat allemaal niet hoeft te gebruiken en uit kunt zetten. Maar tsja, voor die 1337 devs is het natuurlijk ook al verschrikkelijk dat Visual Studio een solution container gebruikt om projecten te groeperen en met die structuur ook automatisch buildscripts maakt. The horror! Dat wil je toch zeker zelf managen met kilometers XML?!?!
Zelf zit ik meer in de Java hoek en ook daar zie je verschillende stromingen ontstaan. 'Vroegah' hadden we als build tool alleen Ant, waarbij je inderdaad nogal wat XML schreef (of meestal kopieerde) om je build aan te slingeren. Maven gaat meer uit van conventies en is dus wat sneller out of the box te gebruiken.

Het lastige is natuurlijk om te bepalen waar de sweet spot tussen conventie en configuratie ligt. Dat ligt per persoon en per project op een andere plek. Mijn voorkeur gaat dan ook uit naar iets dat je snel in kan zetten en vervolgens kunt aanpassen naar smaak en behoefte.

Ik probeer de ontwikkelingen op .Net gebied wel een beetje bij te houden en één van de verschillen tussen de Java en de .Net wereld is volgens mij de keuzevrijheid in de eerste. De gemiddelde Java ontwikkelaar is gewend om z'n eigen omgeving in elkaar te schroeven. CVS of Subversion? JIRA of Bugzilla? Eclipse, IntelliJ, JDeveloper, Netbeans of JBuilder? In de .Net wereld lijkt MS zo allesoverheersend dat er eigenlijk maar één keuze is. Dat heeft het voordeel dat je niet hoeft te kiezen en dat scheelt een boel tijd. Het nadeel is dat je wel volledig afhankelijk bent van één leverancier die bovendien zo groot is dat het moeilijk is om er iets gedaan te krijgen.

Van bepaalde zaken val ik nog steeds van mijn stoel. Bijvoorbeeld die harde koppeling tussen de versies van VS en .Net die pas met VS 2008 verbroken is. Het is toch van de idiote dat je voor een bepaalde versie van je VM alleen met een bepaalde versie van je IDE uit de voeten kunt. Refactoring loopt behoorlijk achter in VS (tenminste tov IntelliJ), VSS is niet de meest geweldige VCS en zo zijn er nog wel wat zaken die het leven van een .Net ontwikkelaar niet zo eenvoudig maken.

Emacs is natuurlijk een beest van een editor en MS zal er een behoorlijke kluif aan hebben om snel zoiets in elkaar te zetten. Maar een editor is nog geen IDE. Als je alleen maar code klopt is de editor natuurlijk je werkomgeving, maar verreweg de meeste ontwikkelaars zullen ook wel eens iets moeten doen met een VCS en een bugtracker. En als dat een beetje gemakkelijk te integreren is heb je een werkomgeving die alles een stuk overzichtelijker en makkelijker maakt.
@ Bas T, bedoel je toevallig csc? ;)

@Bobco: Het in elkaar schroeven van je omgeving gebeurd nog steeds. Je kiest te testtools, de continues integration tools, etc, etc. Echter, iedere release van Visual Studio aakt Microsoft het iets makkelijker.
Zo is voor de volgende release geplanned om een abstract test framework neer te zetten zodat xUnit.NET, NUnit, MbUnit, etc allemaal kunnen integreren.

Version Control wordt al heel vaak niet meer gedaan met Visual Source Safe. Je ziet vele bedrijven overstappen op Subversion, Vault of Team Foundation Server. Deze laatste maakt het mgoelijk om in de hele suite van MS Project, CRM, Sharepoint, Navision, SQL Server, BI-tools, etc, orde te scheppen in je projecten.

Refactoring heeft MS al wat beter op orde, maar zij zien ook in dat Resharper en Refactor Pro op dit moment beter (betaalde) tools aanbieden. Het heeft voor hun geen zin om deze tools na te gaan maken. Slechts de meest gebruikte acties komen erbij. Ze focussen zich daarom op andere dingen.

Het vast zitten van Visual Studio 2003 aan .NET 1.0/1.1 is ene domme fout geweest van Microsoft. Dit hebben ze ook toegegeven. N et als in de eerste versie van Java zaten er in .NET 1.0 een aantal grotere design fouten op het gebied van forward comaptibility.
VS2005 had danwel geen standard ondersteuning, maar met een klein beetje gehack(een programmeur is daar toch niet vies van ;)) lukte het wel om zowel 1.0/1.1 als 2.0 assemblies te bakken.
En nu bewijst de 2.0 CLR dat hij flexibel zat is om nieuwe versies van het framework te ondersteunen. Dat is iets wat Java bijvoorbeeld nog nooit echt heeft bereikt.
Maarja och, of je nu een nieuw framework installeert of een nieuwe CLR, in praktijk moet men toch were wat installeren... ;)

Deze post klinkt misschien wat pro .NET, absoluut niet mijn bedoeling. Voor mijn werk ben ik 'verplicht' beide stromingen in de gaten te houden, en op dit moment ben ik iets pro .NET. Het lijkt of dat daar de innovatie wat harder gaat. Echter, er zijn duidelijke signalen dat Sun ook weer druk bezig is met een kei harde come back van Java :).

Wat betreft Emacs. Het zou mooi zijn als EMacs de snippet-IDE wordt voor PowerShell zowel op Windows als op Linux-varianten. Visual Studio is simpelweg gewoon te zwaar voor dergelijke scripts. Daarnaast wordt PowerShell meer gebruikt door Applicatie beheerders als door programmeurs zelf. Ik wil het deze jongens niet aan doen om Visual Studio te installeren(ook al hebben ze 50% als met de SQL Server Management Studio ;)).

[Reactie gewijzigd door Alex op 2 januari 2008 14:18]

En nu bewijst de 2.0 CLR dat hij flexibel zat is om nieuwe versies van het framework te ondersteunen. Dat is iets wat Java bijvoorbeeld nog nooit echt heeft bereikt.
Wat bedoel je daar precies mee? De Java compiler van Sun (voor het geval dat je geen Jikes gebruikt) is ook prima in staat om te compileren naar een oudere versie van Java dan de versie die bij de JDK hoort waar javac onderdeel van uitmaakt.

Bedoel je dat ik een .Net 3.0 applicatie straffeloos kan deployen op een machine met een .Net 2.0 runtime? Gaat dat ook goed als er .Net 3.0 specifieke calls in gebruikt worden? Een Java compiler zet in de gegenereerde .class files een nummer dat aangeeft welke versie van de runtime er minimaal nodig is om de class te kunnen gebruiken. Zit er ook een soortgelijk mechanisme in de combinatie van MSIL compiler en .Net runtime?
Het .NET Framework staat los van haar target.
Dus je compileerd naar een andere taal(CLR). Alle wijzigingen in C# 3(zoals anonymous methods, lambda expressions, etc) worden gecompileerd naar de CLR 2.0. C# 3.0 maar ook VB.NET 9 is dus niets meer als syntax sugar.
Daarnaast heb je de Base Class Library(BCL), deze classes gebruik je(net als Java) voor je projecten. Deze zijn daadwerkelijk veranderd in de laatste releases.

Voor de duidelijkheid:
.NET 1.0
C#: 1.0
CLR: 1.0
BCL: 1.0
.NET 1.1
C#: 1.0
CLR: 1.0
BCL: 1.1
.NET 2.0
C#: 2.0
CLR: 2.0
BCL: 2.0
.NET 3.0
C#: 2.0
CLR: 2.0
BCL: 3.0
.NET 3.5
C#: 3.0
CLR: 2.0
BCL: 3.5

Leuke aan de vertaalslag is dat je dus code kunt disassemblen in een willekeurige taal. Echter C# 3.0 code kun je slechts disassemblen in C# 2.0.

N.B. Wat ik dus bedoel is dat meerdere 'C# talen' naar dezelfde CLR compileren. Microsoft heeft hun intermediate language(ik heb het over CLR, maar eigenlijk is het CIL, wil het verhaal ff niet moeilijker maken) dus future ready gemaakt.
En dus kun je .NET 3.5 applicaties deployen op een 2.0 machine. Maar dan kun je geen gebruik maken van de classes in de 3.5 BCL.

[Reactie gewijzigd door Alex op 2 januari 2008 17:30]

Echte mannen roepen natuurlijk voor elke compile job cs.exe aan vanuit de command prompt. Niet van die voorgekauwde shit, weet je. MSBUILD, pssssh.
Wat een onzin. Visual Studio is verreweg de meest efficient C# editor die er is. Snippets, intellisense, automatische code formatting, contextuele code database, msdn library integratie, windows forms editor en de resource editor, om maar een paar dingen te noemen. Daar kunnen echt geen 1000 emacs tegenop. Iedereen die iets anders beweert is een hobby-prutser met oogkleppen op.
Ik werk al bijna tien jaar in de industrie en ik kan je vertellen, alle serieuze software bedrijven werken met visual studio voor Windows software, simpelweg omdat het de beste oplossing is.

Ik kan me best voorstellen dat sommige hobbyisten bang zijn van een product als visual studio omdat het zo uitgebreid is, maar dat is dan toch echt je eigen probleem.

We hadden ooit ook zo'n open source fanaat in dienst die er op stond om met dingen als VI, emacs en Eclipse en een open source version control te werken, simpelweg omdat hij een compleet ongefundeerde blinde haat jegens microsoft had. Hij deed dan ook gemiddeld 3 keer zo lang over een project.
Vervolgens had hij per ongeluk met zijn o zo handige Tortoise CVS het grootste deel van zijn source code laten verdwijnen, en was natuurlijk vergeten een open source backup pakket te gebruiken, met als gevolg dat niemand binnen het bedrijf hem nog serieus nam als ontwikkelaar en hij uiteindelijk maar is weggegaan.
Wat een onzin. Visual Studio is verreweg de meest efficient C# editor die er is.
Jij hebt vast nog nooit een VI(M) expert aan het werk gezien. Daar kan werkelijk niks tegenop hoor. En met je tien jaar industrieervaring lijkt het me dat er hier maar een is die oogkleppen op heeft als je na al die tijd nog steeds het idee hebt dat alleen Microsoft degelijke IDE's en tools schrijft. Ooit IntelliJ IDEA gebruikt? Daar kan Microsoft nog weer het een en ander van leren.
Ik ben het overigens wel met je eens dat VS een uitstekende IDE is, maar niet iedereen voelt zich goed met het gebruik van een dergelijke omgeving, en sommige ontwikkelaars geven gewoon de voorkeur aan iets simpels makkelijks als Emacs of VIM.
Vervolgens had hij per ongeluk met zijn o zo handige Tortoise CVS het grootste deel van zijn source code laten verdwijnen,
Iemand die het voor elkaar krijgt met SVN (tortoise is een SVN client, niet een CVS systeem) z'n code te laten verdwijnen (wat erg knap is) kan volgens mij net zo makkelijk met closed-source programma's code laten verdwijnen.
We hadden ooit ook zo'n open source fanaat in dienst die er op stond om met dingen als VI, emacs en Eclipse en een open source version control te werken, simpelweg omdat hij een compleet ongefundeerde blinde haat jegens microsoft had.
Microsoft haten is best kortzichtig, maar het wantrouwen van open source (waar jij kennelijk last van hebt) is minstens net zo dom en ongefundeerd.
Ik wil best een wedstrijdje doen, jij met je VI, ik met visual studio, maken we bijvoorbeeld een C# database applicatie met een WinForms frontend. Kijken wie er het langst over doet.
VI is een fossiel gedrocht uit de tijd van de unices. Die tijd is gelukkig voorbij (ik heb jarenlang met IRIX gewerkt, dat was nog redelijk te doen).
Dat een tool ooit bruikbaar was wil niet zeggen dat dat nu nog steeds zo moet zijn. Visual studio 6 en alles daarvoor was ook kut, dat geef ik eerlijk toe. Maar vanaf VS2005 is er gewoon geen beter alternatief. Punt uit.
IntelliJ IDEA? We hadden het dacht ik over een C# editor. Non-argument dus.

En breek me de bek niet open over Java. De taal is ok (C# leent er heel veel van), maar de rest er om heen is een grote grap. Voor elk stuk java software dat ik ooit gebruikt heb moest ik weer een andere VM downloaden. De performance was *altijd* dramatisch, de UI-kit is non-conform. Ga zo maar door.

En je hebt gelijk, ik heb beslist geen hoge pet op van open source (uitgezonderd ScummVM), maar dat is toch echt gefundeerd, ik ben namelijk wel degelijk open-minded. Ik zoek altijd rond, en als er iets beters voorbij komt neem ik dat. Maar zoals ik al zei, er is (naar mijn eigen en professionele mening) niks beters op het moment.

Voor grafisch werk gaat er bijvoorbeeld niets boven de producten van Adobe. Microsoft heeft het ooit geprobeerd met Photo Editor, maar dat was een drama. Ook bijv. Gimp kan daar van zijn leven nooit bij. Maar ja, hier is het geen strijd tussen Microsoft en een open source pakket dus daar hoor je de fanatici dan weer niet over.
Ik wil best een wedstrijdje doen, jij met je VI, ik met visual studio, maken we bijvoorbeeld een C# database applicatie met een WinForms frontend. Kijken wie er het langst over doet.
Ik begrijp hieruit dat je dus inderdaad nog geen ervaren VI user hebt gezien. Jammer voor je, maak gebruik van de kans als je er ooit een tegen komt, kun je nog iets leren over productiviteit. :)
Het meeste werk bij code schrijven zit niet in nieuwe code, maar in het onderhouden, verbeteren en refactoren van oude code, en daar zul je zien hoe goed dat fossiele gedrocht kan zijn. Daar kom je trouwens ook al snel een grote tekortkoming van VS tegen, namelijk het gebrek aan fatsoenlijke refactorings. Visual Studio heeft er misschien vijf tot tien? IntelliJ IDEA (het feit dat dit een java product is heeft er niks mee te maken, MS kan bijna alles zo overnemen voor een C# IDE) heeft er euh... veel?
IntelliJ IDEA? We hadden het dacht ik over een C# editor. Non-argument dus.
Nee hoor, jij zei "alle serieuze software bedrijven werken met visual studio voor Windows software, simpelweg omdat het de beste oplossing is.", wat natuurlijk onzin is. En nou kun je gaan argumenteren dat Java multi-platform is, maar er zijn genoeg bedrijven die voor windows ontwikkelen en desondanks gewoon Java gebruiken.
En breek me de bek niet open over Java. De taal is ok (C# leent er heel veel van), maar de rest er om heen is een grote grap. Voor elk stuk java software dat ik ooit gebruikt heb moest ik weer een andere VM downloaden. De performance was *altijd* dramatisch, de UI-kit is non-conform. Ga zo maar door.
Leende C# maar de virtual machine, want security van java is veel beter dan van C#.

Dat niet ieder programma niet werkt onder de zelfde VM (Nieuwste versie) ligt dit aan Java, of toch aan de programmeur?

De performance is helemaal nier meer dramatisch, zijn IMO weer van die gedateerde argumenten.

De UI is een probleem zoals je het zegt is omdat het een multi platform taal is terwijl C# puur Windows is (dat er mono is een reverse engineering project waar Microsoft geen bijdrage aangeleverd heeft).

Java heeft de volgende UI widget Toolkits:
AWT
Swing
Beide standaard in java
Standard Widget Toolkit
Hiervoor moeten libraries geïnstalleerd worden. Lijkt qua look en feel een native applicatie.
Nog een SWT.

Er is IMO geen enkele andere programmeertaal die qua portabiliteit in de buurt van Java komt.
Je zegt wel dat je openmindend bent maar je bent zo narrowminded als je maar kan zijn...
Ah kom op, da's flauw. Hij's zo openminded als je maar hoeft te zijn binnen een MS-only omgeving.
Nu breek jij een lans voor VS en waarschijnlijk ook voor C# - helaas kom je ook wel eens het omgekeerde tegen.

Waarbij men voor een website gebruik gaat maken van ASP.net omdat dit beter zou zijn - waardoor er enorm grote pagina's over de lijn geslingerd moet worden en de applicatie - die dus via het internet te gebruiken moet zijn - niet vooruit te branden is...

In zo'n geval heb men beter het hele ASP.net kunnen weglaten - maar dat moet erin blijven omdat het van Microsoft is en dus altijd goed is...

Overigens: Als iemand met niet met open source tools kan werken dan het hij waarschijnlijk ook niet met Microsoft software kunnen werken - je moet namelijk wel een enorme idioot zijn om met CVS je sources naar de mallemoer te kunnen helpen.
Ik werk al bijna tien jaar in de industrie en ik kan je vertellen, alle serieuze software bedrijven werken met visual studio voor Windows software, simpelweg omdat het de beste oplossing is. (...) Ik kan me best voorstellen dat sommige hobbyisten bang zijn van een product als visual studio omdat het zo uitgebreid is, maar dat is dan toch echt je eigen probleem.
Als je inderdaad overgaat tot het gebruik van zaken als ASP.net e.d. dan kun je niet meer om MS VS heen. Op zich is dat niet erg, maar dat maakt VS nog niet de allerbeste oplossing.

Als je buiten C# en buiten ASP.net blijft dan zijn er diverse alternatieven waaronder Eclipse, maar ok diverse andere paketten - zoals hierboven al genoemd is.

Verder zijn al die features wel leuk, maar als je ze niet gebruikt vertragen ze je IDE alleen maar - waarbij je met VS.net ook niet direct Java code kunt kloppen...

N.B. Wel vreemd overigens dat in jullie bedrijf geen centraal Version control system (vcs) is - uit je bericht maak ik op dat dit niet geregeld is... Zodra er dan gekozen is voor een bepaalde VCS moet iedereen er toch mee werken?
N.B. Wel vreemd overigens dat in jullie bedrijf geen centraal Version control system (vcs) is - uit je bericht maak ik op dat dit niet geregeld is... Zodra er dan gekozen is voor een bepaalde VCS moet iedereen er toch mee werken?

Jawel hoor, wij gebruiken SourceSafe. Maar de persoon in kwestie was nogal tegendraads. Zoals je uit mijn verhaal misschien wel kon opmaken :)
SourceSafe is best leuk, maar niet geschikt voor omgevingen van enige omvang.
De eerste barriere waar je tegenaan loopt is dat je SourceSafe database boven de 1 GB regelmatig onderhoud nodig heeft om corruptie van de database te voorkomen.
De tweede barriere waar je tegenaan loopt is dat SourceSafe remote verschrikkelijk traag is. Dat is op te lossen met SourceOffsite, met weer zijn eigen beperkingen.

Bij mij op het werk gebruiken we ook SourceSafe en we lopen continue tegen de grenzen aan.

[Reactie gewijzigd door jmvdkolk op 2 januari 2008 14:18]

Daarvoor heeft MS dus Team Foundation Server. Is alleen wat duurder omdat er een hele hoop extra functionaliteit in zit. Maar als je bedrijf dusdanig groot is dat je dat nodig hebt is dat best te financieren.
Wat is subversion toch mooi...
Jawel hoor, wij gebruiken SourceSafe.
Dat verklaart, want als ik naar SourceSave zoek dan vind ik onder andere een artikel op Wikipedia waar het volgende staat:
SourceSafe is not a client/server SCM. It is a local only SCM.
Bron: http://en.wikipedia.org/wiki/Visual_SourceSafe
Maar de persoon in kwestie was nogal tegendraads. Zoals je uit min verhaal misschien wel kon opmaken
Nu geloof ik gelijk dat deze persoon eigenwijs is, maar als jullie niet eens werken met een centraal VCS dat op een (dedicated) server staat dan zijn jullie zelf ook niet helemaal goed bezig.

Juist CVS, maar ook diverse andere VCS'en - waaronder Subversion, hebben namelijk de mogelijkheid om alle source op een centrale server op te slaan - waardoor je ook gemakkelijker kunt backuppen.

Wellicht dat een goed gesprek met deze persoon jullie zelf van een beter VCS dan SourceSafe voorzien zou hebben en dat deze persoon wel wat minder fanatiek naar OSS software zou blijven kijken.

Of maken jullie helemaal geen gebruik van software buiten MS om?

Edit@Bas T: Ik heb het arikel nog eens gelezen en las dat met de nieuwere versies dit probleem inderdaad opgelost is...

[Reactie gewijzigd door Little Penguin op 2 januari 2008 14:44]

Ik zou je willen adviseren om wat meer te lezen over SourceSafe. Je informatie is namelijk incorrect. Het maakt wel degelijk gebruik van een centrale dedicated server. Zo'n reactie als hierboven staat dan een beetje dom.

-edit- deze reactie was aan Little Penguin

[Reactie gewijzigd door Bas T op 2 januari 2008 14:15]

source-safe gebruikt de server enkel als "fileserver". Er is echt geen software die op de server draait.
Als je een echt source-control wil uit de microsoft stal moet je Team Foundation Server hebben. Dan heb je meteen veel meer dan puur source-control
Brrrr... dat jullie je code durven toe te vertrouwen aan Sourcesafe....
Als je het over baggerproducten hebt...
Tsja... Er zijn altijd pro's en con's. ASP.NET is geen holy grail, JSF is het niet, JSP, Ruby, niets evenaard de paus.... 8)7
Serieus: zowel in Basic C als in Java als in ASP.NET als in Visual Basic 6 kun je goede web applicaties bouwen en slechte. De een biedt ondersteuning, de volgende laat je alles van scatch af opbouwen.

Ik zie maar al te vaak slechte implementaties of in zelf gebouwde frameworks, in ASP.NET, in JSF, etc. De oplossing is dan niet perce het weg laten, maar eens goed over de oplossing nadenken. Grote pagina's kunnen wel een partial gerendered worden(MS term inderdaad) met een AJAX framework, database communicatie kan mogelijk met object pools en lazy loaded objects worden geoptimaliseerd, etc, etc.
Hoe er mee om wordt gegaan zegt echt niets over het framework itself.

Als je gebruikt wilt maken van ASP.NET kun je trouwens net zo goed SharpDevelop of Expression gebruiken. Werkt ook heerlijk hoor!

Microsoft heeft de keuze gemaakt om in Visual Studio één target te ondersteunen: CLR. Alle talen die compileren naar de CLR kunnen ondersteund worden. Tot op de dag van vandaag is er enkel het slappe J#(danku MS voor deze brakke implementatie :() maar geen Java.NET. Als dat er komt, wat me vrij overbodig lijkt naast C#, dan kotm er ook Java ondersteuning in Visual Studio(eventueel als plugin).
Sommigen noemen emacs als grap een compleet operating system, maar in werkelijkheid kan/mag je emacs zien als een LISP interpreter die specifiek geschreven is voor de ontwikkeling van *editors*. Het is een domain specific language, waarin het tenminste theoretisch mogelijk is om de gemiste functionaliteit die jij opnoemt te implementeren. Voor elke grootschalige taak, onafhankelijk van de programmeertaal waarin je gaat werken, de toolchain en developmentmethodiek kan je in principe een ondersteunende editor maken. Dat je daarvoor tegenwoordig een "hobby-prutser" moet zijn om dat schijnbaar te weten, los van alle andere geavanceerde dingen die er te "koop" zijn in de OSS-wereld zegt meer of de inhoud van de professionaliteit van alledag, die inderdaad lijkt te draaien om bijna uitsluitend Microsoft producten. Zo wordt die door jou beschreven "blinde haat" en "oogkleppen" jegens Microsoft ineens wel heel erg begrijpelijk.

[Reactie gewijzigd door chromisX op 2 januari 2008 13:44]

Grappig he, commercie. Hippie-mentaliteit werkt niet in deze wereld, dat is meer dan eens pijnlijk duidelijk geworden. Zeker niet voor software.
En als perfect voorbeeld dat hippie-mentaliteit niet werkt is er zeker Linux? (dat op steeds meer en meer servers geïnstalleerd wordt)

Natuurlijk zijn er zaken waarbij je vooral moet kiezen voor het aanbod van een commercieel bedrijf - soms is er echter in de OSS-comunity een oplossing bedacht die vele malen beter werkt dan de oplossingen van een commercieel bedrijf.

Als je met C# werkt dan is een Microsoft product inderdaad al snel de beste oplossing, ga je echter met Java aan de slag dan is een IDE als Eclipse vele malen beter dan een commerciële oplossing als JBuilder.
Ik weet, het is pijnlijk, maar als er geld aan verdient moeten worden kiezen mensen toch echt voor de meeste effiente manier om dat te doen.
Uit jouw reacties begrijp ik dat je alleen gewerkt hebt met Microsoft software, maar echt soms is een open source oplossing echt beter. Ga jij maar eens een website (met client side code) debuggen met IE. Heel vaak is dit een stuk sneller te realiseren met Firefox met de Firebug extensie...

En natuurlijk je moet zo efficient mogelijk werken als je commercieel software maakt, maar dat neemt niet weg dat je soms dan het beste voor OSS kan kiezen - maak die keuze dan ook en staar je dan niet blind op het feit dat dit niet van een commercieel bedrijf afkomstig is...
Grappig he, commercie. Hippie-mentaliteit werkt niet in deze wereld, dat is meer dan eens pijnlijk duidelijk geworden. Zeker niet voor software.
Vreemd dan dat MS steeds meer van deze 'hippie-zaken' aan het klonen is (Bash -> PowerShell, emacs -> emacs.net, compiz/beryl -> Aero, etc.) :P
Daarom ook mijn punt wat betreft "hobby-prutsers", als je er geen commercieel belang in hebt moet je lekker doen waar je je goed bij voelt, maar dan moet je wel accepteren dat jouw mening niet gedeeld wordt door mensen die er *wel* hun geld mee verdienen.
Niet generaliseren... Ik ken genoeg bedrijven waar men tevreden met SVN, Eclipse, Apache, PHP, MySQL, etc. werkt.. En of die bedrijven winst maken. Dat men daar bij jullie bedrijf anders over denkt is jullie goed recht, maar dat zegt misschien meer over jullie ervaring en kennis. Trek het iig niet door naar de hele branche. Dacht je dat ze bij Google ofzo ook VS draaien?

[Reactie gewijzigd door JanDM op 2 januari 2008 14:11]

hehe ik zit ook niet bij google maar wij gebruiken Eclipse, Apache Tomcat en MySQL als ontwikkel omgeving voor onze kassa applicatie (Lees kassa applicatie die gebruikt word door grote concerns met meerdere filiaalen over heel de wereld die allemaal met elkaar verbonden staan en real-time alle data verwerken, updaten en raporten van uitdraait etc...) Verder ondersteund de applicatie zelf ook database connecties voor MSSQL, SQLLite, XML Database, Derby, Oracle en ODBC. En kan in princiepe draaien onder elke Java web container. De applicatie is dus in Java geschreven en onder Linux/Unix draait dit perfect en heb je een performance waar je U tegen zegt. Terweil als je dezelfde applicatie inderdaad onder windows met een virusscanner zou draaien ben je minuten bezig met opstarten. Dit puur omdat die virusscanners al die jar files gaan checken omdat het domweg gewoon zip files zijn en omdat microsoft nou niet bepaald goed is in memory management. Verder weet ik wel dat de sources op een Linux server staan maar vergeef mij dat ik niet weet welke CVS wij gebruiken...

Voordelen: Heel simpel je kan ontiegelijk veel besparen op MS XP, Office en VS licenties....
Nadelen: Ik heb er nog geen een gevonden...

Verder schrijf ik ook wel eens C#/.NET applicaties en sommige dingen die Eclipse ondersteund qua class generatie kom ik echt helemaal nergens tegen in VS terweil ik me in VS toch ook best wel thuis voel.
Ik ben nooit bij google geweest, dus daar kan ik niet over oordelen. Jij ook niet denk ik.
Wel als je Google gebruikt om op te zoeken wat Google gebruikt! Dan zie je dat het hele zootje altijd al - vanaf de garage - gedraaid heeft op een zelf aangepaste Linux-variant. Ik zal je een tip geven, Visual Studio en .NET draaide toen niet op Linux (eerste nog steeds niet), en Mono zal zeker niet op een aangepaste gedistribueerde Linux-variant draaien!
Hippie-mentaliteit werkt niet in deze wereld, dat is meer dan eens pijnlijk duidelijk geworden.
BitKeeper was destijds de enige VCS die gedistribueerde versie-controle had. Nu is er ook een gratis variant van - GIT, speciaal geoptimaliseerd voor snelheid voor grote complexe projecten (het werd ontworpen voor het onderhoud van een complexe kernel-tree van 20.000+ bestanden die van over de hele wereld ge-update wordt) . Overigens gemaatk door ene Linus Torvalds - misschien heb je ooit eens van hem gehoord - in opdracht van een bedrijf, en hij werd daar ruim voor betaald.
Right. Dat je data weg is door CVS, en dat je daar geen backup van hebt, is je eigen schuld. Of je nu commerciele software gebruikt of free software, incompetentie zorgt er altijd voor dat je dat soort grapjes voorhebt.
Dan nog heeft VS irritante dingen als dat ie je met de uitlijning van je code ed bemoeid
Sommige ontwikkelaars hebben hier nu eenmaal een hekel aan
De meeste nieuwe features in de Visual Studio IDE vind je eerder in diverse andere pakketten (die volgens jou niet serieus zijn). Visual Studio is wel de enige die al die features uit al die andere pakketten in 1 pakket combineert. Daarmee is het inderdaad heel krachtig. Maar, als je overweg kan met Emacs dan is dat vele malen efficienter dan Visual Studio, totdat je GUI elementen moet bewerken natuurlijk. Voor .Net applicaties is Visual Studio dus inderdaad het meest compleet en voor de meesten ook het handigst.

Maar de meeste kwaliteitsontwikkelaars maken geen .Net applicaties en dan is Visual Studio niet noodzakelijk beter of handiger dan andere pakketten (zowel freeware als commercieel). Het zijn allemaal persoonlijke keuzes qua voorkeuren. Binnen een bedrijf moet je die keuzes alleen wel voor iedereen maken, anders wordt samenwerken steeds lastiger. En de learning curve van Visual Studio is veel lager dan die van Emacs.
Iedereen die iets anders beweert is een hobby-prutser met oogkleppen op.
Ik zou uitkijken met dergelijke uitspraken. Verschillende doelen, verschillende middelen. In de custom maatwerk bouw is Visual Studio wellicht de beste oplossing. Wanneer het echter om productontwikkeling gaat, dan zit Visual Studio vol tools die een dergelijke developer niet nodig heeft. Natuurlijk kun je met Visual Studio productontwikkeling doen, maar niet iedere ontwikkelaar is even blij met Visual Studio.
Ik werk al bijna tien jaar in de industrie en ik kan je vertellen, alle serieuze software bedrijven werken met visual studio voor Windows software, simpelweg omdat het de beste oplossing is.
Ja, en ik werk al bijna 8 jaar in de industrie. Dus?

Ik denk ook niet dat de doelgroep enterprise development is. Wellicht willen ze de stap verkleinen om met .NET te werken. Immers zijn er genoeg C#'ers die uit de unix-hoek komen en wellicht heel blij zijn met zoiets als wat deze editor moet gaan worden.
...heel verhaal over hoe slecht open source is...
Wie zegt dat dit een Open Source product wordt? Dat het op Emacs gaat lijken betekent niet dat het direct Open Source is. Immers, Microsoft ontwikkelt het zelf. :)

Ik vind persoonlijk dat jij wat kort door de bocht bent met wat beweringen. De developers-wereld is niet zwart-wit. Al was het alleen maar omdat de Java-wereld nog altijd (hoewel krimpende) groter is dan de .NET wereld.
Dat maak jij er van. Ik som alleen op wat ik in mijn professionele carriere heb meegemaakt en ervaren.
Professionele carriere met een leeftijd van 27 jaar...
Alle serieuze bedrijven werken met een oplossing die zo veel mogelijk platform onafhankelijk is (en met platform bedoel ik niet alleen windows 95, 98, Me, XP, 2000 of Vista)...
Blijkbaar ken je Emacs niet en ben je ook niet echt bekend met Vi. het enig wat ik misschien mis in vi is intellisense. maar daar staat tegenover dat vi en emacs niet na de 10e keer compileren op hun bek gaan door een gebrek aan geheugen terwijl je 4 Gb in je machine hebt zitten...
Automatische code formatting is al zo oud in zowel emacs als vi... zeker nog nooit van tags gehoord...
Contextuele code database??? wat is dat nu weer voor buzzword...
MSDN integratie? Wat moet ik daarmee?, ik wil platform onafhankelijk zijn.
Professionele carriere met een leeftijd van 27 jaar...
Foei, dat grenst aan de discriminatie op basis van leeftijd. Leeftijd heeft weinig tot niets te maken met hoe relevant iemand's mening is. Maar goed, dat terzijde.

Vraagje: Hoe oud was Ken Silverman toen hij de Build engine schreef voor Duke3D?
En John Carmack toen hij Wolf3D programmeerde?
Antwoord: Ken 21, John 25. En dat waren/zijn toch belangrijke mensen in die wereld.
Natuurlijk niet dezelfde industrie, maar wat ik wil zeggen is dat leeftijd weinig tot niks zegt.

Wat ik altijd zo jammer vind is dat dit soort discussies altijd eindigt in een oorlog over wat technisch perfecter is. De realiteit is dat er miljoenen zo niet miljarden euros door de plee worden gespoeld door projecten die niet binnen budget blijven, te laat worden afgeleverd, niet de oplossing bieden die de klant wilde, of zelfs volledig mislukt. En maar blijven mekkeren met z'n allen over VI vs. emacs vs. VS. Hulde! Life is all about priorities!
Er zijn nu ook al prima IDE's voor C# naast VS. Op mijn werk wordt bijvoorbeeld veel X-Develop gebruikt en dat werkt voor zover ik weet prima. Geen VS-bloat dus, maar wel gewoon alle voordelen die in een IDE zitten.
Een veel gehoorde kreet: "Emacs is een mooi besturingsysteem, compleet geleverd met spelletjes en een psychiater, alleen jammer dat die editor zo beroerd is" ;)

Persoonlijk gebruik ik emacs regelmatig, maar het grootste nadeel vind ik wel dat het zo enorm groot geworden is, dat je in verhouding steeds minder ervan gebruikt.
Ik vrees dat MS dat niet zal verbeteren en dat het dus meer een IDE gaat worden ipv een editor.
Ik moet zeggen dat microsoft vrij goed bezig is voor developers. Het is toch een compliment aan RMS en een goede ontwikkeling dat meer unix-achtige tools zoals powershell en emacs.net ook voor het windows-platform aandacht krijgen. Het is niet voor iedereen en niet voor elk project even geschikt wellicht, maar ik weet zeker dat een groot aantal ontwikkelaars hier blij want productiever mee zullen zijn en vooral minder RSI zullen krijgen.

En als je liever een IDE gebruikt dan doe je dat toch lekker? Doe ik ook meestal :)
Detail: Richard Stallman heeft behoorlijk last van een aan carpal tunnel syndroom verwante aandoening aan zijn handen. Een hele tijd lang kon hij alleen schrijven door dingen te dicteren aan FSF-typisten. (http://www.faifzilla.org/ch09.html voetnoot 11)

@edit: om omgeveer dezelfde reden dicteer ik ook, alleen ik heb geen geld voor typisten maar spreek tegen Dragon Naturallyspeaking. :)

[Reactie gewijzigd door Arnoud Engelfriet op 2 januari 2008 16:39]

Ja eigenlijk is VIM beter voor je handen, maar alles waarmee je minder hoeft te muizen scheelt. De GUI in een IDE vind ik fijn voor complexe projecten, zeker als je minder bekend bent met bepaalde technologie. Maar het scheelt enorm wanneer je nauwelijks je vingers van het toetsenbord hoeft te halen, al krijg je natuurlijk niet zomaar een RSI vrij bestaan van een editor...
Emacs is in C geschreven, niet "grotendeels in Lisp". Het is uitbreidbaar door functies in Lisp te schrijven, het heeft een Emacs-Lisp interpreter aan boord.
[...] Richard Stallman, die bekendheid geniet als Linux-evangelist en als oprichter van de Free Software Foundation.
RMS is geen Linux evangelist. Hij is een Free Software evangelist. En dan nog zou het "GNU/Linux" moeten zijn en niet "Linux". De Linux kernel werd gebruikt voor de GNU OS omdat de GNU kernel (genaamd Hurd) niet af was/is.
Daar verschillen de meningen over. RMS vind dat de tools het systeem maken, en de kernel in principe ondergeschikt is en dat daarom elke Linux distributie GNU/Linux zou moeten heten.

Anderen vinden de kernel het belangrijkste, en het GNU deel alleen een verzameling tools die niets te maken hebben met de hoe het systeem werkt en dat derhalve Linux gewoon Linux is zonder GNU toevoegsels en dat RMS wil delen in de eer en succes van Linux.

Zijn leuke discussies over geweest op de kernel list, gestart door RMS. Waar hij trouwens redelijk mee bij is afgefakkeld door onder andere LT en AC.

Persoonlijk vind ik het maar een vreselijk irritant een zeurderig mannetje. Beetje frustie omdat de wereld maar niet wil draaien om RMS. Evangelist is nog lichtelijk zwak uitgedrukt. Zealot in de meest negatieve zin van het woord komt meer in de buurt imo.
Maar wat heb je hier nou uiteinderlijk aan?
Zijn er niet al gewoon honderden editors beschikbaar voor elke programmeertaal die er is?
Er zijn maar weinig pro-editors die goed .NET ondersteunen. :)
Goed lezen, het wordt geschreven in .net Niet om in .net te programmeren.
Je denkt toch niet dat Microsoft een IDE gaat maken waarmee je Java kunt ontwikkelen he?
Nee, maar wel een IDE dat makkelijk uitbreidbaar is. Misschien maken ze een IDE met wat default microsoft-plugins voor c# etc., maar het lijkt me dan niet onmogelijk dat er java uitbreidingen komen. Misschien zelfs wel van MS zelf.
Windows heeft binnenkort een server variant die geen grafische schil bevat. Hoe moet je dan tekst bewerken? Met het edit.com uit 1995? Nee, dan is het heel handig als er een krachtige editor is.

Als het programma goed genoeg is wordt het misschien ook op de desktop gebruikt door met name programmeurs die liever zo'n editor gebruiken dan een IDE.
Server zonder gfx schil? Heb je daar meer info over?
Hoe moet je dan tekst bewerken?
Remote op je workstation met een editor naar keuze natuurlijk!
Ik heb gemengde gevoelens bij dit.

Enerzijds is het natuurlijk tof dat MS een op emacs gebasseerde editor uitbrengt voor zijn .net platform en dus indirect erkent dat emacs wel degelijk een goede robuuste editor (OS :p) is. Zo goed zelfs dat ze zelf niets beter konde verzinnen. Maarja, sinds wanneer verzint MS zelf iets?

Anderszijds mag je er zeker van zijn dat ze het als nieuw een innovatief gaan verkopen en maar al te veel MS lovers en *nix onkundige zullen dat graag geloven...
Ik hoop dat ze opteren voor een andere taal dan LiSP, ik vind het al zwaar 'afrip' zoals we hier in antwerpen zeggen, dat ze weer met een component van linux gaan lopen.

Langs de ene kant is het altijd van "jullie schenden onze patenten" wat volgens mij bullshit is, maar lang de andere kant nemen ze wel allerhande zaken over. Vele functies van OS X en Linux zitten zo opeens in Vista. (en nu krijg ik natuurlijk mensen die zeggen dat het toeval is of dat de development van Vista al bezig was toen een component gemaakt werd voor Linux) maar toch blijf ik erbij dat Microsoft zich eens eindelijk wat minder herheven mag opstellen en als ze dit gaan doen dat ze dan wel wat mogen teruggeven aan de open-source, GNU en FSF-communities.

En als afsluiter, Linux for the win :P
Ja, in feite is Emacs ook deel van GNU en was het 1 van de eerste programma's die af was voor zover ik weet. Hij is zowat geheel door onze freesoftware vriend RMS geschreven ;)
Kan dus weer een uitleg bij: "Even Microsoft Acknowledges Customizable Software".

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True