• Uncategorized

    I’m sure you don’t care…

    … but I’m very glad so I share ­čśë I’ve just became a MCTS – Microsoft Certified Technology Specialist in ASP.NET. I passed the 70-536 and 70-528 (with quite good marks). Now I’m starting to learn to became Professional Developer (exam 70-547). Wish my luck!

  • Uncategorized

    Language doesn’t matter

    My father is a land-surveyor (geodesist if you will). Nowadays he uses a notebook for his field measurements, but there was a time when he used a scientific calculator. Recently he’s notebook went dead, so he wanted to move back to his Casio scientific calculator. But, ups! Not in use for a while the battery ran out and the geodetical programs are gone. So I have to type my old programs back to the small computer. I thought I’ll share one of them as a example that programming language does not matter. What matters is how you use it and how well others could use your work. So let my…

  • Uncategorized

    It’s not magic – it’s floating point math

    Please remember that 3 / 12 is not always 0.25! ­čśë Take this example: int i = 3; Console.WriteLine(i / 12); You will get 0. I admit it could by a little confusing at first but I assure you, there is nothing wrong in the way JIT thinks. We dividing an integer over a… integer. What we are getting? Well, of course an integer! Is it not what you expected? How to fix this? Well the easiest way is to: int i = 3; Console.WriteLine(i / 12.0); You will get 0.25. Why? Well 12.0 is a double so the whole equation will by a double. You can check this easily…

  • Uncategorized

    The power of image – merging in SVN

    I’ve recently read a short explanation of joining in SQL. I was simply amazed how ease it was to explain fairly complicated matter with few well chosen pictures. Please read it, no matter how good are you in SQL – it will surely help you next time you will have to explain joining in SQL to someone else. I’ve decided to try the same way to taking SVN branching and merging as a target. To remind you. When you are using the source control system like Subversion (SVN) you can always branch. Meaning you can take a copy of your current sandbox and check it in as a new “path…

  • Uncategorized

    IProgrammable goes multilanguage

    Dobra bez ┼╝art├│w. W┼éa┼Ťnie zainstalowa┼éem plugin do WordPress o nazwie Gengo i sprawdzam jak na IProgrammable wygl─ůdaj─ů polskie ogonki. ┼╗eby nie zostawia─ç was z bezsensownym postem testowym rzuc─Ö troch─Ö tre┼Ťci. Przytocz─Ö wam ma┼é─ů anegdot─Ö. Uczestnicz─Ö w moim pierwszym kursie programistycznym Microsoftu. Prowadz─ůcy najwyra┼║niej programist─ů .NET nie jest ale my┼Ťl─Ö sobie b─Ödzie dobrze. W ko┼äcu prowadz─ůcy przede wszystkim powinien by─ç dydaktykiem i porz─ůdnie przekaza─ç mi wiedz, ze kt├│r─ů moja firma p┼éaci prawie trzy tysi─ůce z┼éotych. Prowadz─ůcy pyta: – A wiedz─ů pa┼ästwo jak w C# tworzy si─Ö parametry opcjonalne? Ki czort, my┼Ťl─Ö sobie. Nigdy o czym┼Ť takim w .NET nie s┼éysza┼éem i pr├│buj─Ö naiwnie: – Nie wiem ale spr├│bowa┼ébym polimorfizmem. – A…

  • Uncategorized

    C# 3.0 – .NET Framework ?

    I’ve written an article about C# 3.0 for a polish programmers magazine Software Developer’s Journal. That’s not my first article but the first one to hit the cover and by the issue lead. Great, right? Well I’m afraid not! Why? Because of embarrassing mistake on the cover: C# 3.0 has nothing to do with .NET Framework 3.0. The new C# version will by introduced with .NET Framework 3.0 that comes with new Visual Studio 2008. The third version of framework is essentially the same with the second but enriched with a bunch of foundations (WPF, WCF, WWF). This information appears in the first paragraph of my text! I’ll ask the editorial…

  • Uncategorized

    Who needs DBNull?

    I’m currently taking part in my first MS certified .NET training. I’ll write some more about this training after it’s over, but now I have to share one thing with you. Once again I notices that DBNull is causing more confusion than it is worth. A certified .NET instructor had a hard time describing it to course attendees. Some time ago I had a long conversation about it. Both time I couldn’t help my self thinking: “who to hell needs this DBNull”. Because in .NET DBNull is not equal null. DBNull is a little extraordinary data type. It is used to describe a value from DB that does not exists…

  • Uncategorized

    .NET Remoting Articles

    The good folks at Software Developers Journal are working hard on delivering good content to polish speaking software developers community. They recently made two of my older articles available online (mid 2006). The articles are both about .NET Remoting (The basics of .NET Remoting and Extending .NET Remoting). This rather ascending technology (we have WCF) could by interesting today too. There is a lot of work done with plain old .NET Remoting. You will read there about the basic concepts, about using the communication techniques given by Microsoft, configuration them and implementing your own communication channels.

  • Uncategorized

    RTFM you idiot (me)

      Have I told you lately that reading manuals is good thing? Wow, what a discovery! Believe me, reading the documentation, manuals, MSDN will save you time. One day spend on reading about .NET Framework fundamentals will save you 2 of debugging, and wandering why… I’ve recently found a nasty behavior in my search by example routine. I thought that I know enough about NHibernate to use find by example in discoverable mode (its when you are programming with Intelisense as your help and guide ;). My code looked like this: Customer exampleCustomer = new Customer(); exampleCustomer.FirstName = view.FirstName; exampleCustomer.LastName = view.LastName; string[] excludeProps = new string[] { }; CustomerList customerList =…

  • Uncategorized

    Gotcha C# operator

    Sometimes I have a positive feeling of “what’ta f…” reading someone else code (at a contrary to negative feeling of the same sort wchich I get way to often). Recenty I’ve found the ?? operator in C#. And really I didnt know it could by used it this way: string s = null; string s2 = s ?? "remembered"; string s3 = s2 ?? "vorgotten"; The ?? operator returns the left operand if it not equalls null and the right one when it is. Simple and usefull!