Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
var is syntatic sugar, en wordt alsnog door de compiler een type aan geplakt, op basis van het return type van method aanroep die je aan die var assigned (of new, of ...). dynamic is daadwerkelijk dynamisch en wordt @runtime gekeken of die property/method wel beschikbaar is, wat ook een performance penalty tot gevolg heeft, logischerwijs.RayNbow schreef op zaterdag 04 januari 2014 @ 17:49:
[...]
Maar var en dynamic zijn nog steeds strongly typed?
Ik weet wel een paarBtM909 schreef op zaterdag 04 januari 2014 @ 17:50:
[...]
Hoe kom je daar nou bij? ICT is gewoon een algemeen begrip waar communicatie gewoon onderdeel van is hoor
[...]
Dat hangt toch helemaal van wat je doet? Als de IT afdeling ook verantwoordelijk is voor de communicatie, dan hoort die C er gewoon bij. Ik kan mij bijna geen type bedrijf voorstellen waar geen communicatie wordt gebruikt / gevoerd.

Maar dat is waarschijnlijk niet op de manier die jij bedoelt
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Precies m'n punt. Het maakt een gedeelte van C# niet opeens loosely typed.RobertMe schreef op zaterdag 04 januari 2014 @ 17:52:
[...]
var is syntatic sugar, en wordt alsnog door de compiler een type aan geplakt, op basis van het return type van method aanroep die je aan die var assigned (of new, of ...). dynamic is daadwerkelijk dynamisch en wordt @runtime gekeken of die property/method wel beschikbaar is, wat ook een performance penalty tot gevolg heeft, logischerwijs.
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
var staat los van wel/niet strongly typed in .NET, var is alleen daar om te voorkomen dat je overal je object type moet specificeren. In tegenstelling tot javascript gaat het je niet lukken om een var die eerst een int was te gebruiken als string.Ryur schreef op zaterdag 04 januari 2014 @ 16:21:
[...]
Dat is ook wat ik niet prettig vind aan loosely typed languages.
Maar aan de andere kant, soms vind ik Strongly typed languages ook niks. Vooral Java vind ik dat irritant bij. Bij C# heb je nog "var" of "dynamic". In Java mis ik dat (of ik moet op Object gaan?).
1
2
| var x = 10; x = "hallo"; |
is prima
maar in C# gaat je onderuit
1
2
| var x = 10; x = "hallo"; |
Dit gaat je gegarandeerd een compiler error opleveren
Object is weer een heel ander verhaal. dan kies je namelijk de meest generieke "gedeelde" class van de objecten (object is de base van in principe alles). Object gebruiken als "dynamisch" coderen is vragen om problemen. Daarnaast is het absoluut niet vriendelijk voor de ontwikkelaars die je code gebruiken. Ook moet je de hele tijd type checks doen en moet je casten.
Vroeger had je ook in C# maar een type dynamische lijst en die was op basis van object, erg fijn als je zo'n ding moest verwerken, kon je de hele handel eerst casten
Edit: deze prachtige constructie heette ArrayList, wat een drama was dat destijds... Maar er was weinig anders...
Overigens is het voor dit soort dingen leuk/nuttig om je te verdiepen in de CLR (bijv. door het boek CLR via C# te lezen). Je ziet dan hoe bepaalde trucjes worden opgelost en waarom bepaalde dingen niet kunnen in de CLR of waarom bepaalde zaken op een bepaalde manier werken (een goede eyeopener over bijvoorbeeld generics).
Stel ik modelleer een schoolklas binnen een school. Dan heb ik een school object, maar binnen dat object zitten meerdere instances van een schoolklas. Mogelijk zitten die verborgen in een container/collection, maar daarbinnen zitten absoluut meerdere instances van de class schoolklas (welke ook weer meerdere instances hebben van de class leerling).Douweegbertje schreef op zaterdag 04 januari 2014 @ 17:41:
[...]
Kun je wat voorbeelden noemen, ik snap niet precies wat je bedoelt. Imo wat het allemaal juist zo OO maakt is om het juist in de class af te vangen. Ik zie dan weer het 'nut' nog niet direct in om bijvoorbeeld van één class 10 instances te laten draaien.. terwijl je dat imo dan in de class zelf kan oplossen. Ik weet ook niet alles, dus ik ben dan wel benieuwd naar een 'use-case' / voorbeelden
Het kan ook zijn dat we langs elkaar heen praten hoor, maar over het algemeen ga je bij data (communicatie) gebruik maken van meerdere instances. Sterker nog, ik denk dat je bij een 1 instance only versie jezelf op een gegeven moment vast-codeert

Een mail class is misschien een ander verhaal zodra deze enkel "statische" logica bevatten om een mail te sturen, maar ook bij mail kan het zomaar zijn dat je meer instances wil, bijvoorbeeld omdat je meer mails wilt versturen (waarbij ieder bericht dus een instance is die je serveert aan een mailer class).
Ik ben toch echt B. ICT, dus waarom zou ik de C eruit slopenBtM909 schreef op zaterdag 04 januari 2014 @ 17:50:
Dat hangt toch helemaal van wat je doet? Als de IT afdeling ook verantwoordelijk is voor de communicatie, dan hoort die C er gewoon bij. Ik kan mij bijna geen type bedrijf voorstellen waar geen communicatie wordt gebruikt / gevoerd.
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Verder bordurend op het email voorbeeld. Ik wil email op twee manieren kunnen versturen. Ik kan email zowel versturen via een lokale mailserver als een externe. Zeg normale emails gaan via de lokale en nieuwsbrieven via de externe. In een routine wil ik zowel nieuwsbrieven versturen als op het einde een email naar de admin dat de nieuwsbrieven verstuurd zijn. Dan wil ik dus twee instanties van een mail transport hebben, eentje die volledig geconfigureerd is om mails naar de externe server te sturen, en eentje die geconfigureerd is om mails naar de lokale server te sturen.Douweegbertje schreef op zaterdag 04 januari 2014 @ 17:41:
[...]
Kun je wat voorbeelden noemen, ik snap niet precies wat je bedoelt. Imo wat het allemaal juist zo OO maakt is om het juist in de class af te vangen. Ik zie dan weer het 'nut' nog niet direct in om bijvoorbeeld van één class 10 instances te laten draaien.. terwijl je dat imo dan in de class zelf kan oplossen. Ik weet ook niet alles, dus ik ben dan wel benieuwd naar een 'use-case' / voorbeelden
Wat jouw manier nog complexer maakt, met die load/clear, is dat je niet weet of de library geload is (in ieder geval als je goede herbruikbare code hebt waardoor dezelfde logica via meerdere paden wordt aangeroepen). Dus dan ben je verplicht om die load te doen, maar je weet ook niet of de library al gebruikt is, en dus "verkeerde" instellingen erop staan, dus buiten de load moet je ook nog eens altijd de clear doen, en dan nog eens alle instellingen vullen.
Daarnaast, wat .Gertjan bedoeld met containers/entiteiten. Een email zelf maak ik een class EmailMessage van, daarop zet ik de to, from, body, .... Als ik dan meerdere emails wil sturen wil ik dus ook meerdere instanties van die EmailMessage class aanmaken (elke instantie representateerd een enkele email). In CI kan dat niet, sterker nog, CI maakt AFAIK helemaal geen onderscheid tussen een mail transport en een message.
Als je een variabelen als dynamic declareert is die variabele dus wel loosely typed. Het is een object, dus je kunt alles eraan assignen, maar je kunt ook alles erop aanroepen, omdat @runtime pas gekeken wordt wat aangeroepen moet worden en of dat uberhaupt wel bestaat.RayNbow schreef op zaterdag 04 januari 2014 @ 17:53:
[...]
Precies m'n punt. Het maakt een gedeelte van C# niet opeens loosely typed.
Is dat zo? Ik dacht dat het werd omgezet in een "echte" class waartegen de compiler nog wel checks deed. Ik moet zeggen dat ik dynamics enkel gebruik in de vorm van new { x = 1, y = 2 } dus ik ken het fijne er niet van.RobertMe schreef op zaterdag 04 januari 2014 @ 18:02:
Als je een variabelen als dynamic declareert is die variabele dus wel loosely typed. Het is een object, dus je kunt alles eraan assignen, maar je kunt ook alles erop aanroepen, omdat @runtime pas gekeken wordt wat aangeroepen moet worden en of dat uberhaupt wel bestaat.
Het lijkt mij dat de compiler je een schop geeft als je het onderstaande probeert te doen:
1
2
3
| dynamic t = new dynamic(); //:$ geen idee hoe je er een aanmaakt, maar je snapt het idee ;) t.Prop1 = "t"; t.Prop1 = 1; |
Ik mag hopen dat de compiler je dan netjes op de vingers typt. Een deel van de checking zal vervallen zodra je uit de scope van je functie loopt, maar ik mag hopen dat er onderwater wel enige checking plaats vindt.
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
RobertMe schreef op zaterdag 04 januari 2014 @ 18:02:
[...]
Als je een variabelen als dynamic declareert is die variabele dus wel loosely typed. Het is een object, dus je kunt alles eraan assignen, maar je kunt ook alles erop aanroepen, omdat @runtime pas gekeken wordt wat aangeroepen moet worden en of dat uberhaupt wel bestaat.
1
2
3
4
| // loosely typed: var x = "123"; var y = 4; console.log(x * y); |
1
2
3
4
| // strongly typed (maar dynamisch) dynamic x = "123"; dynamic y = 4; Console.WriteLine(x*y); |
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
Volgens de docs:.Gertjan. schreef op zaterdag 04 januari 2014 @ 18:06:
[...]
Is dat zo? Ik dacht dat het werd omgezet in een "echte" class waartegen de compiler nog wel checks deed. Ik moet zeggen dat ik dynamics enkel gebruik in de vorm van new { x = 1, y = 2 } dus ik ken het fijne er niet van.
Het lijkt erop dat je dus in runtime dynamisch nieuwe properties kan toevoegen.At compile time, an element that is typed as dynamic is assumed to support any operation. Therefore, you do not have to be concerned about whether the object gets its value from a COM API, from a dynamic language such as IronPython, from the HTML Document Object Model (DOM), from reflection, or from somewhere else in the program. However, if the code is not valid, errors are caught at run time.
1
| new { x = 1, y = 2 } |
Is trouwens een anonymous type en geen dynamic! Deze maakt op de achtergrond wel netjes een class voor je.
[ Voor 7% gewijzigd door Megamind op 04-01-2014 18:13 ]
Mooiste van Javascript is dat hij leuke foefjes uithaalt met strings....RayNbow schreef op zaterdag 04 januari 2014 @ 18:09:
[...]
JavaScript:
1 2 3 4 // loosely typed: var x = "123"; var y = 4; console.log(x * y);
Om verder te bouwen op je voorbeeld:
x*y = 492
x+y = "1234"
x+"xx" = "123xx"
x+y+"xx" = "1234xx"
x*y+"xx" = "492xx"
Een heerlijke taal dat javascript
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Nee, dat kan alleen als het object dat ondersteunt. De volgende code zal falen:Megamind schreef op zaterdag 04 januari 2014 @ 18:11:
[...]
Volgens de docs:
[...]
Het lijkt erop dat je dus in runtime dynamisch nieuwe properties kan toevoegen.
1
2
| dynamic x = "foo"; x.a = 3; |
Maar dit werkt wel:
1
2
| dynamic x = new ExpandoObject(); x.a = 3; |
Ipsa Scientia Potestas Est
NNID: ShinNoNoir
Ah ja dat is inderdaad wel logisch inderdaad. Ik bedenk zelf de Facebook C# API erbij welke overal te pas en onpas een dynamic teruggeeft voor de informatie die op dat moment beschikbaar is uit Facebook.RayNbow schreef op zaterdag 04 januari 2014 @ 18:18:
[...]
Nee, dat kan alleen als het object dat ondersteunt. De volgende code zal falen:
C#:
1 2 dynamic x = "foo"; x.a = 3;
Maar dit werkt wel:
C#:
1 2 dynamic x = new ExpandoObject(); x.a = 3;
Heerlijk spul, dat javascript. Helemaal in combinatie met NodeJS..Gertjan. schreef op zaterdag 04 januari 2014 @ 18:15:
[...]
Mooiste van Javascript is dat hij leuke foefjes uithaalt met strings....
Om verder te bouwen op je voorbeeld:
x*y = 492
x+y = "1234"
x+"xx" = "123xx"
x+y+"xx" = "1234xx"
x*y+"xx" = "492xx"
Een heerlijke taal dat javascriptHet zal wel ergens verklaard staan, maar hier kun je spannende dingen van krijgen. Net als dat je in sommige gevallen bij parseInt expliciet de radix op 10 moet zetten omdat hij anders besluit een andere conversie te doen...
Maar betreffende jouw verhaal, is deze natuurlijk verplicht:
https://www.destroyallsoftware.com/talks/wat
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Voor zover ik weet wel ja, en intussen ook bevestigd door anderen. En je gaf aan dat verdiepen in de CLR handig kan zijn. Je weet dat .NET 4 daar nog iets bovenop heeft? De DLR, Dynamic Language Runtime.Gertjan. schreef op zaterdag 04 januari 2014 @ 18:06:
[...]
Is dat zo? Ik dacht dat het werd omgezet in een "echte" class waartegen de compiler nog wel checks deed. Ik moet zeggen dat ik dynamics enkel gebruik in de vorm van new { x = 1, y = 2 } dus ik ken het fijne er niet van.
Het lijkt mij dat de compiler je een schop geeft als je het onderstaande probeert te doen:
C#:
1 2 3 dynamic t = new dynamic(); //:$ geen idee hoe je er een aanmaakt, maar je snapt het idee ;) t.Prop1 = "t"; t.Prop1 = 1;
Ik mag hopen dat de compiler je dan netjes op de vingers typt. Een deel van de checking zal vervallen zodra je uit de scope van je functie loopt, maar ik mag hopen dat er onderwater wel enige checking plaats vindt.
De aangehaalde ExpandoObject is ook een vreemd type. Dit is een (expliciet) geimplementeerde IDictionary (TKey, en TValue weet ik zo even niet, of dat string, object of string, dynamic of nog wat anders is). Daarnaast implementeert deze nog een of andere interface waardoor de DLR weet dat het een dynamisch type is en er via "get" en "set" methods dingen gelezen en geset kunnen worden. Hetzelfde idee als PHPs magic methods: __get, __set en __call.
Moet zeggen dat ik mij er nog niet zover in verdiept hadRobertMe schreef op zaterdag 04 januari 2014 @ 18:35:
[...]
Voor zover ik weet wel ja, en intussen ook bevestigd door anderen. En je gaf aan dat verdiepen in de CLR handig kan zijn. Je weet dat .NET 4 daar nog iets bovenop heeft? De DLR, Dynamic Language Runtime. Deze hele extra laag zorgt dus ervoor dat "dynamic" werkt.
Ik wist wel day dynamic iets "spannends" was
Een boek over CLR heeft dan niet zoveel zin, nee
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Ik gebruik VS en ook PHPStorm. Toch vind ik VS veel overzichtelijker, ook de code. Geen idee waarom.RobertMe schreef op zaterdag 04 januari 2014 @ 17:48:
[...]
-> is vreselijk? Dat maakt toch niet zoveel uit, ja, het is een karakter meer typen, maar is het dan al vreselijk?. En ga dan maar geen C++ doen, dan heb je . en ->, moet je ook nog nadenken erbij(alhoewel bv Qt Creator een . standaard omzet naar -> als dat moet, gok dat andere IDEs die keuze ook wel voor je kunnen maken).
Daarnaast, ja, VS is een heel goede, fijne, IDE, maar er zijn ook gewoon goede IDEs voor PHP. Ik gebruik nu PHPStorm (JetBrains), en dat werkt ook gewoon erg goed. Daarnaast zit er al standaard een stukje framework integration voor Symfony2 in, en is er een plugin beschikbaar die nog veel en veel meer handige dingen toevoegt (zoals automatisch resolven van variabele types als je ze uit de service container haalt).
Zoals ik al zei ligt het probleem ook 90% tussen scherm en stoel.Bij PHP gaat het vooral om inzet/echt willen en je soms wat meer in dingen verdiepen. Waar het bij C# standaard is en daardoor normaal is. Bij PHP moet je namespaces willen gebruiken, in C# is het min of meer een verplichting (je zou alsnog alles in dezelfde namespace kunnen dumpen). Hetzelfde voor strongly typed, PHP dwingt het niet af, maar als je gewoon netjes werkt hoeft dat geen probleem te zijn. Daarnaast met de opmerking van Ryur, "in C# heb je nog dynamic", maar dynamic zou je in C# eigenlijk ook niet moeten gebruiken. Het komt wel voor dat je dynamic gebruikt, maar dat is maar zelden. Hetzelfde als dat je in PHP maar zelden daadwerkelijk een ander type wilt assignen aan een andere variabele. En dynamic is ook pas vrij nieuw in C# waar het in PHP vrij standaard is. Anonieme classes/dynamics gebruik je voornamelijk in Razor templates om de "config" door te geven, wat in PHP perfect met assoc arrays kan, of bij Linq queries om (snel) een resultaat te krijgen wat niet op een model gemapt is, wat in PHP met een stdClass kan.
Note: ik heb zowel regelmatig met C# en PHP gewerkt. C# krijgt ook zeker mijn voorkeur (ondanks dat ik een "Linux man" ben), maar de laatste versies van PHP, en de nieuwe frameworks gebruik makende van de nieuwe features, doen niet daadwerkelijk onder voor C# (/ASP.NET) zolang je je vak serieus neemt. Tuurlijk is strongly typed en een compiler verrekte handig om fouten snel te detecteren, maar als je zorgvuldig werkt loop je ook in PHP niet tegen problemen aan door het missen van deze "features".
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Misschien komt dat omdat je op een andere manier te werk gaat. Mijn javascript en css code wordt over het algemeen ook een ontiegelijke rommel, je pleurt de hele handel bij elkaar en op de een of andere reden blijft het lastig om structuur te houden (of uberhaubt te brengen).F.West98 schreef op zaterdag 04 januari 2014 @ 19:09:
[...]
Ik gebruik VS en ook PHPStorm. Toch vind ik VS veel overzichtelijker, ook de code. Geen idee waarom.
Zoals ik al zei ligt het probleem ook 90% tussen scherm en stoel.
Ben mij eens aan het verdiepen in typescript in de hoop dat een wat soepelere object definitie/structuur in javascript mij ook weer wat structuur biedt in de code die ik schrijf...
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Bij CSS is dat inderdaad standaard moeilijk, vooral door de selector opbouw. Bij Javascript kun je IMHO wel vrij makkelijk structuur aanbrengen (alhoewel OO werken met "overrides" een hell is en blijft). In het geval van CSS is SASS of LESS erg handig omdat je dan (o.a.) de operators kunt nesten:.Gertjan. schreef op zaterdag 04 januari 2014 @ 19:21:
[...]
Misschien komt dat omdat je op een andere manier te werk gaat. Mijn javascript en css code wordt over het algemeen ook een ontiegelijke rommel, je pleurt de hele handel bij elkaar en op de een of andere reden blijft het lastig om structuur te houden (of uberhaubt te brengen).
Ben mij eens aan het verdiepen in typescript in de hoop dat een wat soepelere object definitie/structuur in javascript mij ook weer wat structuur biedt in de code die ik schrijf...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| #foo { color: red; .bar { color: blue; &:hover { color: yellow; } } } /*wordt: */ #foo { color: red; } #foo .bar { color: blue; } #foo .bar:hover { color: yellow; } |
Zo kun je dus vrij makkelijk de structuur aanbrengen doordat je niet elke keer een berg selectors moet herhalen en je de bij elkaar horende stukjes mooi bij elkaar kunt zetten binnen de nesting.
Edit:
Tweakers CSS parser snapt // natuurlijk niet, wat ook zo'n handige toevoeging van SASS is.
[ Voor 3% gewijzigd door RobertMe op 04-01-2014 19:27 ]
Code netheid is voor mij altijd een probleem in een hogere programmeertaal. Java verplicht om klasses in aparte files te hebben. Maar ik denk dat het grootste structuurprobleem in Javascript (en welke dynamische (hogere) taal dan ook) is dat je even gauw iets in elkaar zet, "even gauw" een functie toevoegen, en even later heb je een main.js van 1000 regels :x. Het is denk ik een mentaliteitprobleem, Javascript denk ik persoonlijk minder lang over de structuur na.Gertjan. schreef op zaterdag 04 januari 2014 @ 19:21:
[...]
Misschien komt dat omdat je op een andere manier te werk gaat. Mijn javascript en css code wordt over het algemeen ook een ontiegelijke rommel, je pleurt de hele handel bij elkaar en op de een of andere reden blijft het lastig om structuur te houden (of uberhaubt te brengen).
Ben mij eens aan het verdiepen in typescript in de hoop dat een wat soepelere object definitie/structuur in javascript mij ook weer wat structuur biedt in de code die ik schrijf...
[ Voor 5% gewijzigd door windwarrior op 04-01-2014 19:28 ]
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
Wel handig zo'n aankondiging bravo
Hoewel ik LESS inderdaad erg fijn vind werken, ben ik niet zo'n fan van extreem diepe inheritance blokken (verder dan 2 ga ik liever niet).RobertMe schreef op zaterdag 04 januari 2014 @ 19:26:
[...]
Bij CSS is dat inderdaad standaard moeilijk, vooral door de selector opbouw. Bij Javascript kun je IMHO wel vrij makkelijk structuur aanbrengen (alhoewel OO werken met "overrides" een hell is en blijft). In het geval van CSS is SASS of LESS erg handig omdat je dan (o.a.) de operators kunt nesten:
Cascading Stylesheet:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #foo { color: red; .bar { color: blue; &:hover { color: yellow; } } } /*wordt: */ #foo { color: red; } #foo .bar { color: blue; } #foo .bar:hover { color: yellow; }
Zo kun je dus vrij makkelijk de structuur aanbrengen doordat je niet elke keer een berg selectors moet herhalen en je de bij elkaar horende stukjes mooi bij elkaar kunt zetten binnen de nesting.
Edit:
Tweakers CSS parser snapt // natuurlijk niet, wat ook zo'n handige toevoeging van SASS is.
Ander groot voordeel van LESS, is het structureren in bestanden.
Ik heb main.less:
@import 'bootstrap'; /** Twitter bootstrap componenten die ik nodig heb in LESS format */
@import 'elements'; /** You can't live without elements.less! */
@import 'fonts'; /** Fonts declaraties */
@import 'body';
@import 'news';
@import 'menu';
@import 'sidebar';
@import 'form';
@import 'poll';
@import 'responsive';
@import 'fancybox';
@import 'forum';
Nu heb ik 5 LESS bestanden, met allemaal hun eigen target waar de LESS/CSS die ze bevatten voor bedoeld is.
Draai de LESS-compiler, en je houdt 1 minified bestand over, main.css. Minified, netjes gescheiden, leesbaar.
Ow ja, en ik heb elements er in, die me deze awesome dingen fixt:
1
2
3
4
5
6
7
8
| .container { .rounded(1px); background-color:#FDFDFD; padding: 10px 10px; margin-bottom: 10px; position: relative; height: 20px; } |
En natuurlijk, nog een voordeel van LESS.
Heb je een DOM-element wat BIJNA hetzelfde is als, bijvoorbeeld je container?
1
2
3
4
| .mini-container { .container; height: 10px; } |
[ Voor 18% gewijzigd door Firesphere op 04-01-2014 19:37 ]
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
HTML is door de indenting redelijk overzichtelijk, met Razor en templates al helemaal
JS mijd ik de laatste tijd. Anders is het inderdaad een vreselijke spaghetti
PHP is bij mij gewoon niet geweldig. Gewoon een heleboel functies enzo, omdat het gewoon dingen mist die c# wel heeft waardoor die laatste gek genoeg wel clean lijkt.
Maar ik ga PHP nu opnieuw proberen met een framework
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Right.

Blijkbaar is er een update die de boel ineens incompatible maakt

I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
CSS blijft bij mijn ondanks LESS redelijk rommelig. Ik gebruik de nesting eigenlijk nooit, en in het begin ben ik nog weleens slim door netjes met mixins en variabelen te werken, maar dat slijt er op een gegeven moment uit. Dan weet je niet meer waar bepaalde zaken hoor en is het control+end en ram je daar je code neerF.West98 schreef op zaterdag 04 januari 2014 @ 19:35:
CSS blijft bij mij, mede door LESS, heel erg overzichtelijk
HTML is door de indenting redelijk overzichtelijk, met Razor en templates al helemaal
JS mijd ik de laatste tijd. Anders is het inderdaad een vreselijke spaghetti
Wat een drama was dat. Daarnaast moesten de paden ook kloppen tov de namespace. Blegh... Ik gebruik over het algemeen wel een nieuwe file per class, maar zo nu en dan is er een simpele helper of data container nodig, die vind ik geen eigen file waard (in het kader van single-responsibility splits ik hem naar een eigen class). Nu kun je die als nested class bouwen, maar daar wordt je ook niet altijd blij van. De beperking die java je oplegt was mij vanaf het begin al een doorn in het oog.windwarrior schreef op zaterdag 04 januari 2014 @ 19:27:
[...]
Code netheid is voor mij altijd een probleem in een hogere programmeertaal. Java verplicht om klasses in aparte files te hebben.
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Je hebt een CSS-Whacker nodig..Gertjan. schreef op zaterdag 04 januari 2014 @ 19:45:
[...]
CSS blijft bij mijn ondanks LESS redelijk rommelig. Ik gebruik de nesting eigenlijk nooit, en in het begin ben ik nog weleens slim door netjes met mixins en variabelen te werken, maar dat slijt er op een gegeven moment uit. Dan weet je niet meer waar bepaalde zaken hoor en is het control+end en ram je daar je code neer
Elke keer als je iets stoms doet in CSS krijg je een klap
Mijn grootste LESS-bestand is zo'n 300 regels lang (vind ik eigenlijk al teveel). En door die dingen gewoon een handige naam te geven weet je altijd waar je die betreffende styling neer moet plempen.
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
QFT.Gertjan. schreef op zaterdag 04 januari 2014 @ 19:45:
Wat een drama was dat. Daarnaast moesten de paden ook kloppen tov de namespace. Blegh... Ik gebruik over het algemeen wel een nieuwe file per class, maar zo nu en dan is er een simpele helper of data container nodig, die vind ik geen eigen file waard (in het kader van single-responsibility splits ik hem naar een eigen class). Nu kun je die als nested class bouwen, maar daar wordt je ook niet altijd blij van. De beperking die java je oplegt was mij vanaf het begin al een doorn in het oog.
Verder snap ik al waarom PHP OOP bij mij mis gaat, nu ik me verdiep in frameworks. Ik denk te veel in files met requests. Ik blijf bestanden maken die je moet requesten. ZF doet dat bijvoorbeeld niet, zoals .NET ook niet doet, en dat is wel beter. Ik moet van die mindset af.
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Je hebt les 1 van MVC gemist? Dan kan het inderdaad niet goed komen. PHP werkte al met MVC, en frontcontrollers, routers, controllers & actions nog voordat MS droomde van ASP.NET MVC. MVC an sich was in PHP in opkomst toen ik ermee begon, en dat is ong. 10 jaar geleden, waar ASP.NET MVC nog zeker geen 5 jaar bestaat.F.West98 schreef op zaterdag 04 januari 2014 @ 19:52:
[...]
QFT
Verder snap ik al waarom PHP OOP bij mij mis gaat, nu ik me verdiep in frameworks. Ik denk te veel in files met requests. Ik blijf bestanden maken die je moet requesten. ZF doet dat bijvoorbeeld niet, zoals .NET ook niet doet, en dat is wel beter. Ik moet van die mindset af.
CSS is ook zeker mijn hobby niet, daar heb ik inmiddels mensen voorFiresphere schreef op zaterdag 04 januari 2014 @ 19:50:
[...]
Je hebt een CSS-Whacker nodig.
Elke keer als je iets stoms doet in CSS krijg je een klap
Mijn grootste LESS-bestand is zo'n 300 regels lang (vind ik eigenlijk al teveel). En door die dingen gewoon een handige naam te geven weet je altijd waar je die betreffende styling neer moet plempen.
Ik probeer het wel te scheiden, maar soms kom je randgevallen tegen en dan wordt het een zooi. In het begin splits ik mooi de verschillende elementen op en splits ik scherm layouts van control layours. Maar als een control zich op een bepaald scherm in een bepaalde situatie anders moet gedragen is het altijd maar de vraag waar je het neer mikt.
Ik wil daarnaast voorkomen dat ik tig files moet includen. Voor JS scheid ik mijn controls vaak in een eigen js file en verzamel ik kleine dingen in een overkoepelende control js, maar bij CSS heb ik daar niet zo'n zin in, dat is vaak toch wat meer vervlochten met elkaar...
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
De compiler interpreter maakt er uiteindelijk 1 bestand van, en maakt van .mini-container:
1
2
3
4
5
6
7
8
| .mini-container { /** De rounded zooi hier */ background-color:#FDFDFD; padding: 10px 10px; margin-bottom: 10px; position: relative; height: 10px; } |
Dus je consistentie tussen de twee is volledig afhankelijk van de "master", de anderen updaten automatisch mee.
Alleen die mini-container specifieke zaken zul je na moeten lopen.
Het resultaat is dus altijd maar 1 css-bestand dus
Weet je zeker dat je die CSS-whacker niet wilt? Lijkt me namelijk erg leuk om te maken
[ Voor 8% gewijzigd door Firesphere op 04-01-2014 20:04 ]
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
PHP MVC geöriënteerd? Nee. Totaal niet. Frameworks maken het dat.RobertMe schreef op zaterdag 04 januari 2014 @ 19:57:
[...]
Je hebt les 1 van MVC gemist? Dan kan het inderdaad niet goed komen. PHP werkte al met MVC, en frontcontrollers, routers, controllers & actions nog voordat MS droomde van ASP.NET MVC. MVC an sich was in PHP in opkomst toen ik ermee begon, en dat is ong. 10 jaar geleden, waar ASP.NET MVC nog zeker geen 5 jaar bestaat.
Maar in .NET ben ik het gewend het zo te doen, en daar doe ik dat ook zo. Alleen in PHP is die mindset nog niet doorgekomen.
Rustig, rustig.
Overigens:
Welk framework moet ik nemen?
* F.West98 rent
Ik ben aan het denken over ZF
[ Voor 8% gewijzigd door F.West98 op 04-01-2014 20:05 ]
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Verplicht namespace/filepath heeft voor mij wel wat, het is *in je face* overduidelijk. Klasse nl.windwarrior.MijnApp.MijnClass, dan staat ie ook in src/nl/windwarrior/MijnApp/MijnClass.java, code is altijd minstens vindbaar..Gertjan. schreef op zaterdag 04 januari 2014 @ 19:45:
[...]
CSS blijft bij mijn ondanks LESS redelijk rommelig. Ik gebruik de nesting eigenlijk nooit, en in het begin ben ik nog weleens slim door netjes met mixins en variabelen te werken, maar dat slijt er op een gegeven moment uit. Dan weet je niet meer waar bepaalde zaken hoor en is het control+end en ram je daar je code neer
[...]
Wat een drama was dat. Daarnaast moesten de paden ook kloppen tov de namespace. Blegh... Ik gebruik over het algemeen wel een nieuwe file per class, maar zo nu en dan is er een simpele helper of data container nodig, die vind ik geen eigen file waard (in het kader van single-responsibility splits ik hem naar een eigen class). Nu kun je die als nested class bouwen, maar daar wordt je ook niet altijd blij van. De beperking die java je oplegt was mij vanaf het begin al een doorn in het oog.
En @hierboven, Django, oh wacht dat is een Python framework * windwarrior is weg
[ Voor 3% gewijzigd door windwarrior op 04-01-2014 20:07 ]
Ik bedoelde ook niet PHP als taal, maar "de PHP community". Wat dus weer wat terug komt op het "goed willen doen" en "in de materie verdiepen". In PHP kun je het zo nasty of zo mooi doen als je zelf wil. Gebruik je in PHP gewoon een goed framework met MVC (zoals het hoort, zou ik bijna zeggen), is het stukken beter.F.West98 schreef op zaterdag 04 januari 2014 @ 20:04:
[...]
PHP MVC geöriënteerd? Nee. Totaal niet. Frameworks maken het dat.
Maar in .NET ben ik het gewend het zo te doen, en daar doe ik dat ook zo. Alleen in PHP is die mindset nog niet doorgekomen.
Rustig, rustig.
Doordat je zelf dus meer vrijheid hebt kan het dus ook even duren voordat je door hebt hoe het moet. Sommigen komen nooit erachter, anderen nadat ze het ergens anders hebben gezien, en anderen door te leren/op te hoogte te blijven. Het is ook geen verwijt dat je het niet kent. Het verklaard alleen voor een groot deel waarom je C# zoveel stukken beter vind. Een stuk kennis wat je mist (wat op die leeftijd ook zeker niet erg is).
Ikzelf zou persoonlijk Symfony (SF) zeggen. Als het maar voor iets kleins is zou je ook naar Silex kunnen krijgen. Van dezelfde makers en bouwt op de SF componenten, alleen een stuk makkelijker mee te beginnen (maar door het gebruik van callback methodes in routes kan het ook weer snel "mis" gaan, omdat je niet het volledige controller & action idee hebt). Of the newest kid in town, Laravel, wat ook gedeeltelijk op de SF componenten bouw. Maar het "facades" deel daarvan vind ik persoonlijk minder werken.Overigens:
Welk framework moet ik nemen?
* F.West98 rent
[ Voor 21% gewijzigd door RobertMe op 04-01-2014 20:12 ]
True, maar dat is voor mij momenteel niet echt een issue meer. Ik navigeer vooral met mijn toetsenbord en werk vanuit Visual studio met Resharper. Grotendeels kan ik vinden via goto-definition of via control-t (find type). Vooral die laatste is zo ontiegelijk handigwindwarrior schreef op zaterdag 04 januari 2014 @ 20:05:
[...]
Verplicht namespace/filepath heeft voor mij wel wat, het is *in je face* overduidelijk. Klasse nl.windwarrior.MijnApp.MijnClass, dan staat ie ook in src/nl/windwarrior/MijnApp/MijnClass.java, code is altijd minstens vindbaar.
Als JetBrains hun goto-implementor niet had verkloot was Resharper mijn beste aankoop in jaren geweest... Maar helaas loop ik al sinds de release van R#8 te kloten met die functie en ben ik ook actief met JetBrains aan het speuren naar de oorzaak (en oplossing)...
Moet zeggen dat ik te weinig front-end werk doe om mij echt te trainen in Less. Ik gebruik het vooral vanwege de variabelen en mixins. Heb bij een klant momenteel een LESS sheet staan die hij met de variabelen naar smaak kan inrichten. Verder probeer ik CSS werk zo ver mogelijk van mij af te schuivenFiresphere schreef op zaterdag 04 januari 2014 @ 20:00:
En dat is dus waar LESS voor is, zie exhibit A: De inheritance in .mini-container
De compiler interpreter maakt er uiteindelijk 1 bestand van, en maakt van .mini-container:
Cascading Stylesheet:
1 2 3 4 5 6 7 8 .mini-container { /** De rounded zooi hier */ background-color:#FDFDFD; padding: 10px 10px; margin-bottom: 10px; position: relative; height: 10px; }
Dus je consistentie tussen de twee is volledig afhankelijk van de "master", de anderen updaten automatisch mee.
Alleen die mini-container specifieke zaken zul je na moeten lopen.
Het resultaat is dus altijd maar 1 css-bestand dus
Ben wel benieuwd welke regels je erin duwt. Op basis van die regels kan ik ook lerenWeet je zeker dat je die CSS-whacker niet wilt? Lijkt me namelijk erg leuk om te maken
Een whacker an-sich is wel grappig. Ik wil ook eigenlijk een zoemer aan de laptop van collega's hangen, steeds als ze een build breken dat het alarm afgaat
The #1 programmer excuse for legitimately slacking off: "My code's compiling"
Firesphere: Sommige mensen verdienen gewoon een High Five. In the Face. With a chair.
Zend Framework.F.West98 schreef op zaterdag 04 januari 2014 @ 20:04:
[...]
PHP MVC geöriënteerd? Nee. Totaal niet. Frameworks maken het dat.
Maar in .NET ben ik het gewend het zo te doen, en daar doe ik dat ook zo. Alleen in PHP is die mindset nog niet doorgekomen.
Rustig, rustig.
Overigens:
Welk framework moet ik nemen?
* F.West98 rent
Ik ben aan het denken over ZF
NOOOOO!!!!!F.West98 schreef op zaterdag 04 januari 2014 @ 20:04:
[...]
PHP MVC geöriënteerd? Nee. Totaal niet. Frameworks maken het dat.
Maar in .NET ben ik het gewend het zo te doen, en daar doe ik dat ook zo. Alleen in PHP is die mindset nog niet doorgekomen.
Rustig, rustig.
Overigens:
Welk framework moet ik nemen?
* F.West98 rent
Ik ben aan het denken over ZF
Ga dan voor Symfony2 of (ouch, dat ik dat zeg) Laravel. Tenzij je een compleet systeem met CMS nodig hebt, kijk dan naar Silverstripe of Typo3.
In principe dus alles wat de logical chain van de resulterende HTML breekt.Gertjan. schreef op zaterdag 04 januari 2014 @ 20:12:
Ben wel benieuwd welke regels je erin duwt. Op basis van die regels kan ik ook leren
Een whacker an-sich is wel grappig. Ik wil ook eigenlijk een zoemer aan de laptop van collega's hangen, steeds als ze een build breken dat het alarm afgaat
In jouw geval.... alles?
[ Voor 27% gewijzigd door Firesphere op 04-01-2014 20:17 ]
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Ben er pas een paar maanden mee bezig, en het bevalt zeer goed. Gewoon less.js gebruiken tijdens het ontwikkelen en "renderen" (?) als je klaar bent. Met less kun je zo makkelijk je consistentie beheren (mits je gebruik maak van de variabelen
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Was een leuk projectje om te experimenteren met Coffeescript + BackboneJS (beide aanraders)
Favoriete zenders & programma's worden opgeslagen in HTML5 local storage.
Ik gebruikte jarenlang de tvgids van nu.nl, totdat ze deze omgooiden en er een grote baggerzooi van maakten.T020 schreef op zaterdag 04 januari 2014 @ 20:33:
Ik gebruik al een tijd tvgids.nl om even snel te kijken wat er zoal op TV is, en stoor me aan de interface die een beetje omslachtig is en ik niet lekker vind werken. Heb daarom besloten zelf wat in elkaar te sleutelen en ben best trots op het resultaat: http://tkroes.nl/tvgids/
Was een leuk projectje om te experimenteren met Coffeescript + BackboneJS (beide aanraders)
Favoriete zenders & programma's worden opgeslagen in HTML5 local storage.
Jouw timeline, held!
(En ik had't eigenlijk zelf ook moeten bedenken en maken
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
DankFiresphere schreef op zaterdag 04 januari 2014 @ 20:34:
[...]
Ik gebruikte jarenlang de tvgids van nu.nl, totdat ze deze omgooiden en er een grote baggerzooi van maakten.
Jouw timeline, held!
(En ik had't eigenlijk zelf ook moeten bedenken en maken)
Ik gebruikte zelf eerst http://gids.omroep.nl die ook gewoon met een horizontale scrollbar werkte, maar die is recent ook omgegooid

Eh... Je kan op de pijltjes klikken om naar voor/achteren te gaan.T020 schreef op zaterdag 04 januari 2014 @ 20:38:
[...]
Dank
Ik gebruikte zelf eerst http://gids.omroep.nl die ook gewoon met een horizontale scrollbar werkte, maar die is recent ook omgegooid
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
ja oké, maar ik vind dat dus niet zo lekker werken. Met een scrollbar gaat het veel soepeler en preciezer. En zoals Firesphere al aangeeft: de interface heeft VEEL te veel whitespace en teveel kleurtjes.Daos schreef op zaterdag 04 januari 2014 @ 20:42:
[...]
Eh... Je kan op de pijltjes klikken om naar voor/achteren te gaan.
Also, ik heb "-webkit-overflow-scrolling:touch" in de CSS gezet zodat je smooth scrolling kan gebruiken op een tablet. Nu heb ik geen tablet, maar ik kan me voorstellen dat als je met een iPad op de bank zit deze lekkerder werkt dan één met pijltjes.
.Gertjan. schreef op zaterdag 04 januari 2014 @ 20:12:
[...]
Een whacker an-sich is wel grappig. Ik wil ook eigenlijk een zoemer aan de laptop van collega's hangen, steeds als ze een build breken dat het alarm afgaat
Horizontaal scrollen met het touchpad van m'n Mac werkt prima op die site.Daos schreef op zaterdag 04 januari 2014 @ 20:42:
[...]
Eh... Je kan op de pijltjes klikken om naar voor/achteren te gaan.
We are shaping the future

Daarnaast ben ik behoorlijk gelukkig met symfony, krijg ik mijn css met sass min of meer onder controle... alleen ajax-jquery wil nog een erg ingewikkelde zooi worden met veel te veel geneste functies maar waarvan ik nog niet precies weet welk element je waarheen moet passen om het te laten kloppen.
En dat ik nu probeer om me de OO-mindset eigen te maken om vervolgens binnen jquery juist veel meer functioneel te denken doet ook rare dingen met mijn hersenen. (Waarbij ik niet de intentie heb om een hele discussie te starten over wat nu werkelijk het paradigma is dat het meest van toepassing is op jquery, maar de manier van denken voelt meer als het 'haakwerkje' van haskell (en ook prolog trouwens) dan wat ik bij oo probeer te doen.)
Never explain with stupidity where malice is a better explanation
Dot-less of de volgens bij visual studio 2013 geleverde Web EssentialsCaelorum schreef op zaterdag 04 januari 2014 @ 21:25:
Ik moet echt eens gaan kijken hoe ik less in asp.net mvc krijg gestopt. Dan kan ik eindelijk ook over
Nothing to see here!
dynamic is statically typed as dynamic.
Dit moest ik gewoon even toevoegen
Dat laatste gebruik ik. Werkt perfect. Bij een Save (Ctrl+S) doet 'ie direct een build ervanRutix schreef op zaterdag 04 januari 2014 @ 21:27:
[...]
Dot-less of de volgens bij visual studio 2013 geleverde Web Essentials
Ik bedacht me ineens dat ik vanaf morgen een Microsoft Server had. En ook IIS en dus .NET hosting!
* F.West98 is alles aan het maken in .NET MVC
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
DotLess is hopeloos achterhaald. Implementeert enkel de LESS 1.3.x syntax en de standaard functies slechts ten dele.Rutix schreef op zaterdag 04 januari 2014 @ 21:27:
[...]
Dot-less of de volgens bij visual studio 2013 geleverde Web Essentials
Daarnaast is het ook nog eens vreselijk langzaam. Ik heb zelf in een situatie gezeten waar een zelf geschreven HttpHandler die via Process.Start de officiële less.js compiler in NodeJS aanriep tot op 100 keer sneller was dan DotLess.
Voor WebEssentials heb je de 2013 release nodig en dus ook Visual Studio 2013. Deze draait de less.js compiler via Node.js, zoals het hoort. De 2012 release draait de less.js compiler nog via de windows scripting host (JScript, dus). Hierdoor gedraagd de compiler zich alsof deze in een browser aan het draaien is. Via een aantal hacks wordt nog geprobeerd dat in goede banen te leiden, maar dat zakt op een aantal kritieke punten alsnog in elkaar. Relatieve paden in @import statements werken bijv. niet goed en relatieve paden in url() constructies in de via @import geimporteerde bestanden werken ook niet goed.
Beste wat je kunt doen is Web Essentials installeren enkel voor de preview functionaliteit en voor de verdere rest zelf iets bouwen. Je kunt bijv. een MSBuild target schrijven wat alle .less files via een Exec task in Node.js compileert tot CSS, de geproduceerde .css files aan de Content item collectie van je project toevoegt en alle .less files weghaalt. Dan ben je ook gelijk compatible met bijv. TFS Build servers.
Dat is niet triviaal, maar ook niet echt moeilijk. Zelf ooit al eens in een dag of 2 geschreven. Alleen wel eigendom van mijn werkgever. Kan ik je dus helaas niet zo geven.
Je hebt Frameworks en 'frameworks' ... Ik heb er genoeg voor me gehad, en ik begrijp waar veel mensen hun haat naar frameworks vandaan halen.. maar om nu alle frameworks af te schrijven is ook weer redelijk kort door de bocht.En @hierboven, Django, oh wacht dat is een Python framework * windwarrior is weg
Het was meer een flame richting PHP dan naar frameworks hoorDXaroth schreef op zaterdag 04 januari 2014 @ 22:59:
[...]
Je hebt Frameworks en 'frameworks' ... Ik heb er genoeg voor me gehad, en ik begrijp waar veel mensen hun haat naar frameworks vandaan halen.. maar om nu alle frameworks af te schrijven is ook weer redelijk kort door de bocht.
[ Voor 91% gewijzigd door BtM909 op 04-01-2014 23:13 ]
(╯°□°)╯ ︵ ┻━┻
[ Voor 5% gewijzigd door BtM909 op 04-01-2014 23:13 ]
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
En de error-response...BtM909 schreef op zaterdag 04 januari 2014 @ 23:12:
En wat dacht je toen je de topicwaarschuwing las?
[ Voor 1% gewijzigd door BtM909 op 04-01-2014 23:14 ]
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney
Er is toch ook ergens zo'n "eigen inzet" verhaal dinges?Creepy schreef op zaterdag 04 januari 2014 @ 23:15:
[...]
Of hell, lees eens Waar hoort mijn topic? door
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
Edit: blijkbaar bedoel je Mac, negeer m'n link
[ Voor 43% gewijzigd door Cor453 op 04-01-2014 23:40 ]
[ Voor 7% gewijzigd door Firesphere op 04-01-2014 23:57 ]
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Ik heb ook al een klacht ingedient bij Sanoma. Met uitgebreide uitleg wat er dan precies mis mee was, en dat verandering niet altijd vooruitgang is, etc.dcm360 schreef op zondag 05 januari 2014 @ 00:05:
Hm, geinig om te zien dat ik niet de enige was die de ommezwaai van de tv-gids van nu.nl jammer vond. Zelf had ik ook al iets in elkaar gezet, maar dan vooralsnog iets beperkter. Ook vermoed ik dat ik niet de motivatie kan vinden om er binnenkort wat aan te veranderen, aangezien de brondcode alleen op de SSD in mn desktop stond (stom), en die is zojuist overleden (al zou het kunnen dat het per ongeluk in de back-up van vorige week beland is, maargoed, dat merk ik pas als de vervangende SSD binnen is).
Nog geen reactie op gehad
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Vanaf 1.5TB aan SSD's lijkt me dat wat overdreven

I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Inderdaad, 50 euro per jaar voor unlimited
I thought fail2ban would keep the script kiddies out but somehow you still seem to be able to login.

Plus dat ik geen echte data op mijn primary SSD heb. Alle documenten gaan vanaf de server, projecten gaan via SVN en email staat op een exchange server. Meeste databases kunnen gewoon vanaf codefirst migrations worden gerestored.
De factuur stond uiteraard in de e-mail op die SSD, dus tenzij ik de papieren versie zo ergens kan vinden is het even wachten tot de vervangende SSD die ik zojuist besteld heb om te weten te komen of er nog garantie op zat. En of de SSD besteld was bij een winkel die niet failliet gegaan is.
Heb je wel de laatste firmware voor de m4? ik had ook problemen met mn m4 ssds maar naar een firmware flash naar de laatste versie draaien (niet letterlijk dandcm360 schreef op zondag 05 januari 2014 @ 00:24:
Van de 4 SSD's waar ik mee heb gewerkt is dit de eerste die stuk gegaan is. En om maar even wat geruststellends te zeggen: tot voor vanavond had ik werkende SSD's van Kingston, Corsair, OCZ (zit tegenwoordig in de pc van een huisgenoot) en Crucial. De Crucial M4 is degene die stuk gegaan is.
De factuur stond uiteraard in de e-mail op die SSD, dus tenzij ik de papieren versie zo ergens kan vinden is het even wachten tot de vervangende SSD die ik zojuist besteld heb om te weten te komen of er nog garantie op zat. En of de SSD besteld was bij een winkel die niet failliet gegaan is.

I thought fail2ban would keep the script kiddies out but somehow you still seem to be able to login.

Blijkt dat of ik mijn display niet correct aanstuur, of dat mijn display defect is...:

De tekst die in het display had moeten staan is:
Nu maar opzoek naar exact het zelfde display voor debugging van het originele display zonder modificatiesMeterkast Display 1
Time till next update: wait...
Version 1.0.0.2104
Wil je meer info over dit project, check dan hier.
[ Voor 20% gewijzigd door eagle00789 op 05-01-2014 02:07 ]
Ik ben persoonlijk ook heel erg tevreden over Django... veel mensen vinden het te veel bloat, maar die zien het concept er achter niet... een grote toolset voor devverts om snel zooi te maken, en zodra ze ver genoeg zijn dat ze tegen limieten van de built-in zooi aan lopen, zijn ze vaak ver genoeg om dat redelijk simpel te vervangen met hun eigen (of andere 3rd party) implementaties.windwarrior schreef op zaterdag 04 januari 2014 @ 23:05:
[...]
Het was meer een flame richting PHP dan naar frameworks hoor. Persoonlijk nooit begonnen aan PHP en gekozen voor Python, daar het django framework leren kennen en ik vind gewoon dat het goed in elkaar steekt. Ik heb verder geen autoriteit om PHP frameworks af te schrijven omdat ik voornamelijk django gebruik
.
Hmm netjes gedaan, al vraag ik me wel af waarom je nog een atmega zou gebruiken ipv een CortexM3/4 based device. ( Kun je meteen een device nemen met ingebouwde ethernet MAC )eagle00789 schreef op zondag 05 januari 2014 @ 01:17:
Heb ik zelf een mooi printje gemaakt voor mijn display en zover bezig met programmeren in C (nieuwe taal voor mij)..:
Die corruption lijkt me het gevolg van timing op je data/strobe lijnen omdat deze redelijk random lijkt. Probeer eens wat meer tijd te geven nadat je de datalijnen goed hebt gezet.
[ Voor 5% gewijzigd door farlane op 05-01-2014 10:18 ]
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
iets met budget enzo. Verder heb ik niet veel power nodig voor dit project aangezien ik niet veel hoef te doen.farlane schreef op zondag 05 januari 2014 @ 10:09:
[...]
Hmm netjes gedaan, al vraag ik me wel af waarom je nog een atmega zou gebruiken ipv een CortexM3/4 based device. ( Kun je meteen een device nemen met ingebouwde ethernet MAC )
Die corruption lijkt me het gevolg van timing op je data/strobe lijnen omdat deze redelijk random lijkt. Probeer eens wat meer tijd te geven nadat je de datalijnen goed hebt gezet.
Het display komt namelijk in mijn meterkastdeur te zitten en dan kan ik op het display aflezen hoeveel water, gas en stroom ik verbruikt heb en wat mijn huidige verbruik is.
De netwerkaansluiting is om de data uit te kunnen lezen aangezien er Youless devices op mijn gas en stroom meter zitten
[ Voor 119% gewijzigd door eagle00789 op 05-01-2014 13:36 ]
Leuk projectje hoor, maar waarom zou je het display in je meterkast willen hebben? Tis toch veel handiger die buiten de kast te kunnen zien?eagle00789 schreef op zondag 05 januari 2014 @ 12:52:
[...]
iets met budget enzo. Verder heb ik niet veel power nodig voor dit project aangezien ik niet veel hoef te doen.
Het display komt namelijk in mijn meterkast te zitten en dan kan ik op het display aflezen hoeveel water, gas en stroom ik verbruikt heb en wat mijn huidige verbruik is.
De netwerkaansluiting si om de data uit te kunnen lezen aangezien er Youless devices op mijn gas en stroom meter zitten
Was het woordje deur vergeten. Het display komt in de meterkastdeur te zitten.EddoH schreef op zondag 05 januari 2014 @ 13:17:
[...]
Leuk projectje hoor, maar waarom zou je het display in je meterkast willen hebben? Tis toch veel handiger die buiten de kast te kunnen zien?
[off-topic]
ik mis eigenlijk wel een topic van Show je eigen gemaakte hardware hier op tweakers
[/off-topic]
[ Voor 14% gewijzigd door eagle00789 op 05-01-2014 13:38 ]
Zijn zat topics waar je zulke dingen kunt plaatsen.. O.a. in dat 'zuinige topic' .. daar zijn ook zat mensen met hun eigen meuk.eagle00789 schreef op zondag 05 januari 2014 @ 13:37:
[...]
Was het woordje deur vergeten. Het display komt in de meterkastdeur te zitten.
[off-topic]
ik mis eigenlijk wel een topic van Show je eigen gemaakte hardware hier op tweakers
[/off-topic]
STM32 devices beginnen vanaf $0.88, volgens mij fors minder dan jouw atmega2560 dus laat dat geen excuuus zijn. Een random versie met MAC is bijvoorbeeld minder dan $10
Kun je meteen kijken naar een goedkoper LCD display. Uiteindelijk ben je goedkoper uit volgens mij met way more mogelijkheden.
[ Voor 10% gewijzigd door farlane op 05-01-2014 15:53 ]
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
Blijkbaar kan je ergens een Reporting Pincode instellen om zo de reporting API te kunnen gebruiken als authenticatie. Nergens te vinden waar je dat moet instellen, dus ik vragen waar je dat moet instellen, krijg je terug:
Beste,
Bedoeld u dat u een PIN-code nodig heeft om een transactie te maken? Dit hoeft u alleen te doen bij een pin-terminal bijvoorbeeld in de supermarkt, bij ons heeft u geen PIN-code nodig.
Met vriendelijke groet,


Bij het aanmaken van de sessie krijg je een object terug, met o.a. de Reporting Pincode.
Bij het opvragen van data, is de SHA opgebouwd uit de volgende sequence:
The checksum is calculated by creating a SHA1 message digest using an input message with the
following syntax:
Timestamp|SessionID|ReportingPinCode|UserAgent
Et Voila, daar is je RPC dus voor. Het is een alternatieve, extra Session-check dus.
Pagina 52 en verder:
http://www.icepay.com/dow...ion/icepay_webservice.pdf
De reactie van de helpdesk is een beetje ehhhh.... klunzig, maar vermoedelijk weet diegene niet eens dat de reporting API bestaat ofzo
[ Voor 20% gewijzigd door Firesphere op 05-01-2014 19:07 ]
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Dan moet ik toch ergens "Allow Reporting Access" aanzetten neem ik aan in mijn account? Ik kan niet uit de docs opmaken dat ik de pincode terug krijg bij het maken van een request.In order for your application to access the ICEPAY account information, the option “Allow Reporting Access” must be enabled in the ICEPAY account. A separate Reporting Pin Code consisting of 8-digits will then be created. The Reporting Pin Code is needed to sign all the Reporting Web Service web method requests.
Want wat zou ik in moeten vullen bij de CreateSession call as checksum?
[ Voor 6% gewijzigd door Megamind op 05-01-2014 19:14 ]
http://bugs.mysql.com/bug.php?id=69488
Ik wil dat mijn code (voor nu) werkt op MySQL EN MSSQL, omdat ik nog niet zeker weet welke ik uiteindelijk ga gebruiken.
Bij een CREATE TABLE trimt de plugin wel de 'dbo.' weg (dom, dom), maar bij een ALTER niet.
* F.West98 is boos
edit:
Natuurlijk is het niet opensource (want Oracle), dus ik kan ook niet zelf aanpassen.......
[ Voor 13% gewijzigd door F.West98 op 05-01-2014 19:17 ]
2x Dell UP2716D | R9 7950X | 128GB RAM | 980 Pro 2TB x2 | RTX2070 Super
.oisyn: Windows is net zo slecht in commandline als Linux in GUI
Je vraag naar de helpdesk is ook verkeerdMegamind schreef op zondag 05 januari 2014 @ 19:13:
Ja maar op pagina 52 staat dit:
[...]
Dan moet ik toch ergens "Allow Reporting Access" aanzetten neem ik aan in mijn account? Ik kan niet uit de docs opmaken dat ik de pincode terug krijg bij het maken van een request.
Want wat zou ik in moeten vullen bij de CreateSession call as checksum?
Je moet vragen waar je de Reporting Access aan zet, niet naar de pincode zelf.
I'm not a complete idiot. Some parts are missing.
.Gertjan.: Ik ben een zelfstandige alcoholist, dus ik bepaal zelf wel wanneer ik aan het bier ga!
Klopt, een support medewerker moet dit voor je aanzetten.Megamind schreef op zondag 05 januari 2014 @ 19:13:
Ja maar op pagina 52 staat dit:
[...]
Dan moet ik toch ergens "Allow Reporting Access" aanzetten neem ik aan in mijn account? Ik kan niet uit de docs opmaken dat ik de pincode terug krijg bij het maken van een request.
Want wat zou ik in moeten vullen bij de CreateSession call as checksum?
Het gedeelte waar de merchant deze code zelf kan instellen is wel ooit gebouwd maar volgens mij (nog) niet toegankelijk voor de merchant.
Ah zoFiresphere schreef op zondag 05 januari 2014 @ 19:20:
[...]
Je vraag naar de helpdesk is ook verkeerd
Je moet vragen waar je de Reporting Access aan zet, niet naar de pincode zelf.
Jammer, het lijkt me niet dat ze veel te doen hebben aangezien de backoffice al 3 jaar lang zo goed als hetzelfde is.frG schreef op zondag 05 januari 2014 @ 19:25:
[...]
Klopt, een support medewerker moet dit voor je aanzetten.
Het gedeelte waar de merchant deze code zelf kan instellen is wel ooit gebouwd maar volgens mij (nog) niet toegankelijk voor de merchant.
ik doelde eigenlijk op een verzamel topicDouweegbertje schreef op zondag 05 januari 2014 @ 14:14:
[...]
Zijn zat topics waar je zulke dingen kunt plaatsen.. O.a. in dat 'zuinige topic' .. daar zijn ook zat mensen met hun eigen meuk.
kan je niks met reflector ?F.West98 schreef op zondag 05 januari 2014 @ 19:14:
ARGH Deze bug in de MySQL Connector/Net.
http://bugs.mysql.com/bug.php?id=69488
Ik wil dat mijn code (voor nu) werkt op MySQL EN MSSQL, omdat ik nog niet zeker weet welke ik uiteindelijk ga gebruiken.
Bij een CREATE TABLE trimt de plugin wel de 'dbo.' weg (dom, dom), maar bij een ALTER niet.
* F.West98 is boos
edit:
Natuurlijk is het niet opensource (want Oracle), dus ik kan ook niet zelf aanpassen.......
Hail to the king baby!
Moet je ff bij die helpdesk vragen of een topic openenMegamind schreef op zondag 05 januari 2014 @ 19:13:
Want wat zou ik in moeten vullen bij de CreateSession call as checksum?
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
Het was meer een retorische vraag waar ik geen antwoord op verwachtteBtM909 schreef op zondag 05 januari 2014 @ 21:46:
[...]
[mbr]Moet je ff bij die helpdesk vragen of een topic openen ;)[/]
Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij
Dit topic is gesloten.
Dit topic is niet de plaats om te lopen helpdesken. De Coffee Corner is primair bedoeld als uitlaatklep voor iedereen in de Devschuur® en niet als vraagbaak.