RoxxSoft Development Blog
Posts tagged Software
Have you seen that SSL port?
Aug 24th
Back in the day when i was still a zombie developer in some big crappy company :P, we were asked to implement SSL support in our main project, as always, our clueless leader made a really big deal out of it, went to wikipedia and read a few blog posts about SSL and the problems that we could face, then screwed what should have been a very simple operation.
Armed with all the gained knowledge he got from the web, he asked if there were some of us who knew what SSL was, after some of us came forward and say yes, he gave us the usual talk, recommended us to look at some very good sites on the web were we could learn all about SSL and finally, gave us the url for ‘a very good site were you can find a lot of things SSL related: http://www.openssl.org’
Finally, he doubted we could handle the project so he recommended to hire another developer just for this task, a ‘SSL expert’ was hired, it took one week for him to research what was supposed we should do, at the end of the week, he came to me and said, have you done some code already? i took a deep look at him and asked, why? have you? and he went white and said, well yeah i downloaded a few samples from the web, but i can’t compile, i get linker errors and can’t fix them, he spend all the week playing with some very old code he downloaded from the web!
At the end, i had to add SSL support in two days, since the guy burned all the time we had, two week delivery remember, lets use ‘Agile development’ and surprise the client and make miracles! that’s the spirit yeah! management, as always, was clueless, they asked him what was the result of the week he spent ‘researching’ and he simply said ‘i wrote the SSL support and one of your developers is integrating everything’, and of course nobody asked me what really went on, project leaders don’t make mistakes do they?
But anyway, after that, another issue came forward, the big boss didn’t understood a word about SSL or sockets (or anything at all) so he asked, do we have SSL support for this release cycle? and the answer was yes, then he asked for details, and we, as inocent developers we were, gave them away, and that’s were all hell broke lo0se :P, he simply could not understand how the same port number we were using before for simple sockets was now the ‘SSL port’, since we didn’t preserved support for simple sockets and instead used the same port for SSL, after the meeting ended, we got a call from our project leader, completely freaked out asking what the hell was going on and what had we done with the ‘SSL port’ and the ‘old port’, they couldn’t understand that SSL was just encrypting the data over the same port, there had to be a “SSL port” as if it was a physical port, the joke went on for months after that, we even had an idea of printing some milk carton with an ad for the missing ‘port’..
COM without MFC/ATL/Whatever
Nov 6th
I’ve seen a lot of programmers lately that write COM as one of the things they are experts at, but, once you actually put them to the test, they turn out to know the bare minimum of what COM is and how to use it, and why is this? most of them turn out to be Visual Studio programmers, not actually C/C++/C#, etc programmers.
By Visual Studio programmers i mean, those who can only code with VS, take them out of the environment and they are completely lost, ask them to create a windows application without the application wizards and it’s a no go.
Of course most of the people would say, it doesn’t matter, what are the chances that you end up having to work without VS?, yeah i know, if you know where to look for work, you will never find yourself under those circumstances, but how sad that is for anyone who sells himself as a true professional?
Anyway, i had a rather funny situation in which i wrote a c# com object and loaded it from c++, one of the programmers was very impressed, because as far as he knew, you could use c++ from inside a c# application, but not the other way around, so i explained that the c# object was a COM object so there was no problem loading it from c++, but he could not really get it, and why? because funnily enough, he thinks COM is a c-only technology, well now he knows better, but wait, why was this guy hired in the first place? as a windows programmer, to lead the development of a windows application that uses COM as one of the principal technologies with an Office add-on and IE plug-ins and a lot of COM related programming, but he doesn’t really understand anything that is happening, VS does all the heavy work.
So i though about it and decided to write a very simple IE plug-in using the Visual C++ Express edition as with all the code on this site, by reading the code of this plug-in you will be able to see how a COM object actually works without wizard generated code or anything else but what you will find on the source files of our project.
When i say, COM without MFC/ATL, what i mean is, most of the people i know that use COM think it is somehow heavily related to using MFC or ATL, when in fact it is not, there are even those who for some reason believe COM == OLE, how can this happen, for one i think Microsoft’s documentation about COM is very hard to understand for beginners, and second, by using tools like VS most of the knowledge developers could get is taken away from them by the wizards that write all the code and just leave the developer to fill in the methods, which leads to developers who depend on the generated code since they just know that by filling those methods things will work out ok, without having to understand how or why.
So, for those who really want to learn the how and why, I’ll be posting a simple tutorial on the very basics of COM, and i mean really very basics, starting from how a class is made and virtual tables and pointers to methods, interfaces, etc.
Now i would like to ask all windows programmers out there, how much do you really think a software developer needs to understand about windows technologies to describe that person as an “expert” ?
HTML Text Extractor
Sep 17th
A few days ago i posted a very simple app that just extracts the text for any html file, today i have posted the source code for that app, it is so simple i can’t believe some people actually charge for apps like this one, but of course this one is so dumb that it can’t do almost anything aside from removing the html tags, i am sure most commercial apps will do a lot more or a better job.
This code was done with Visual C++ 2008 Express Edition, this was just to try out the compiler so nothing fancy you will find in this code, it was done in less than an hour so it is very simple.
What would be cool i think is a simple app like this that can be improved to include support for more file formats, and then include something like plug-ins so that the app can be updated with more file formats by installing new plug-ins, that would be awesome right? i think i’ll start working on something like that soon.
So anyway, i posted the code here because i think it could be useful for someone developing a similar tool, maybe they can take this code and improve over it, this code has no license terms, it is public domain so that anyone can take it and make whatever they want with it.
You can find the app and the code in the Downloads page
Downloads page
Sep 14th
Just created a Downloads page and posted a small app as a free download, actually it is the first application i give away at this new site, hopefully i will be able to upload some more utilities in the next days, and hopefully they will be useful to someone else who is not me :P
I plan to open source these little applications once the code has been cleaned up and some bugs have been fixed, but if you would like to do that, please drop me a line.
Comments, suggestions are welcome of course.

Recent Comments