woensdag 23 oktober 2013

Entity framework 5; -Script for Migrate.exe


An Entity Framework 6 update is available here.

My current project supports an extensive continuous build system with distribution to a large number of end-users. To be able to track and control this process coordinators preferred SQL-scripts over the "new & wild" concept of migration classes enabling them to verify generated scripts and use their trusted proven infrastructure.
Unfortunately, unlike the package manager, the command line migration.exe doesn't support the -script option. Knowing it was possible from within Visual Studio I set off on a decompilation & exploration journey through power shell scripts and entity framework dll's.

Decompilation & Exploration overiewOnce everything was clear I built a console application directly talking to the scripting functionality in the EntityFramework.dll   You can download the source here. Do remember, all the code is provided as-is and without any warranty.


Special thanks to NDesk for the Options class, it works like a charm!

dinsdag 8 oktober 2013

Our passage to India


Verre, exotische en/of avontuurlijke reizen gaan vaak gepaard met vreemde valuta, reispassen en... visa. Attributen die me altijd een beetje een trots wereldburgergevoel geven, maar je moet ze dus wel in orde maken. Tijdens de middag dacht ik: snel effe surfen, papieren printen, fotootje plakken en klaar. Maar zo mogelijk nog sneller wordt mijn afgejaagd, met efficiƫntie verwend westers persoontje herinnerd aan de nu niet direct meest admirabele Aziatische eigenschap: Overheidsbureaucratie.
Gelukkig linken hersenen herinneringen waardoor mijn fantasieloos vrijdagvoedsel al snel wordt overwalmd door de geur van verse oosterse kruiden en basmati. Intussen beeld ik me een strenge, in groen militair uniform gehulde Indiƫr in wiens 101 vragen ik beantwoord in de hoop hem te overtuigen dat noch ik noch mijn voorvaderen, huisdieren en of hun voorvaderen een druppel Pakistaans bloed en/of sympathie zouden hebben. Toegegeven niet iedereen heeft wijn drinkende kunstliefhebbers als buren en bij deze is mijn interesse in het Indisch Pakistaans conflict dus wel geboren. We reizen nu al om te leren. :) Bij afsluiten krijg ik mijn document, rijkelijk versierd met majestueuze stempels en symbolen die zijn authenticiteit en autoriteit kracht bij zetten.
Dank aan Bart, Fanny en Jally voor de 'hints' want zo'n vragenlijst invullen voelt ook altijd weer een beetje als een toets in het middelbaar :)

donderdag 18 april 2013

Explain IT to the business: Threading



Imagine your program to be a factory. And in that factory you got a team of leprechauns to get a job done. Well those leprechauns are threads. And as in real life, engaging more leprechauns will (probably) get the job done faster. Since threads and leprechauns don't require actual pay, business managers often ask; "Then why not simply add more leprechauns?". Well, when leprechauns team up they need someone to manage their business. And as the business manager knows this is often a complicated undertaking. So imagine the complexity of programming such a leprechaun manager. This is why most programs are sole proprietorships. All being said, investing in a leprechaun manager might be a wise choice (sure the business manager will agree) but do accept that one such manager can only lead so many leprechauns and that for a certain job only so many leprechauns can be engaged before they start running in each other's way.
Conclusion; threads are a lot like leprechauns, magical when balanced and managed properly.
Next up: Inversion of control

Explain IT to the business


As a software architect, and especially during periods of stress you might find yourself in a position where you have to explain a technical detail to an involved business party. They won't help you program but they might need to be reassured why we decided to invest time (and therefore money) in something they can't grasp. I often found this more difficult than previously imagined so I decided to share some explanations. First off is "Threading". If you're a business fellow and you're still riddled or an architect and you find something wrong or too far fetched please let me know, I'm sure we'll align business and IT after all :)

donderdag 7 maart 2013

Techdays 2013, The new oil is unprotected



When you dive into a dark theater on the first sunny day after a the darkest winter you've ever seen it better be good, and it was. First day schedules deep dives on ALM, security, SharePoint and Exchange. Not my favorites at first glance until I admitted I need the ALM testing cycle and I figured out there's only one way to learn security and that's how to break in. And which techy didn't dream of being the authority deifying hacker, breaking through NSA's security while being distracted by incredibly gorgeous women. I admit I did. But I never did see myself as an actual hacker. Somehow it all seemed too mathematical  unrealistic and complicated. And after seeing this morning sessions, I wish it was. I knew today's hackers were actually trained professionals, often military but I at least suspected it to be mathematical, unrealistic and complicated and I learned it's not.

Paula "never thrust a blond" Januszkiewicz, ruled on techdays 2013!
How do they do it? Well first they need to get their foot through the door. This often requires some "social engineering" which might feel like cheating to the hard core engineers but admit; how hard can it be to get a random secretary to open a perfectly honest, but urgent looking word or excel file. And rest assure, after this little mistake the floodgates are open. I won't get into details but they will. Enjoy I did.



On a final note, don't (always) blame the Chinese. Yes they are the guilty ones in many series and in the infamous Mandiant report. But many nations keep binary soldiers (Remember Stuxnet ?) and they should. Information is the new oil and as it seems, it's virtually unprotected.