Saturday, June 13, 2009

Dong away with Interview, CV, Resume in Job Search

Someone suggeseted on Joel on software that we do away with the traditional CV/interview process.

http://discuss.joelonsoftware.com/default.asp?joel.3.757969.15

Here's my thoughts:

---------------------

I don't see anything wrong with having a CV and an interview, per se. Besides measuring confidence and appearance, the interview does the critical job of ensuring that the candidate has actually done and is capable of everything that they have written about in their resume. A sharp interviewer can figure this out by asking them questions about the resume.

And without a CV, how would you make a selection of individuals to bring in for an interview? Simply post a "people wanted" ad? Put on an online test that they have to pass in order to get in? Any kind of test can be gamed/cheated, so I would feel it is of little value.

Now, there would be some advantage to a formal test in the facility, but each position, at each point in time, has different requirements and it is difficult to design a test that accurately measures the needs of the moment. The Chinese Empire had a system called "the examination system" for selecting government officials and it had a lot of problems -- main one being it led to a structure of passive bureaucrats who were helpless against the invasion of more dynamic people and cultures like the British Empire.

Thursday, June 11, 2009

Everything is about Sex

It just struck me the other day how everything is about sex.

Take Mom and apple pie, for example. Well Mom ... how did she get to be your Mom? Because she and Dad had sex, and you're a direct product.

Apple pie .. well American pie, need I say more.

Family values .. what are families anyways but people who are connected by a sex act? Now, it may not be your sex act .. but your grandchildren are the product of your children having sex, your nieces, nephews, in-laws .. I'm sure you can work it out.

Optimizing Infinite Loops - Stack Overflow C, C++ question

There was a rather amusing question posted on Stack Overflow:

I am just wondering if there would be any loss of speed or efficiency if you did something like this:

int i = 0;
while(i < 100)
{
int var = 4;
}

which declares int var one hundred times. It seems to me like there would be, but I'm not sure. would it be more practical/faster to do this instead:

int i = 0;
int var;
while(i < 100)
{
var = 4;
}

My Answer: Both looks take 2 bytes of space and an infinite amount of time :)

Source code as design - and UML, new languages

*sigh* more Microsoft security updates -- been installing for over an hour now.

On JOS someone (Arethuza) posted a very illuminating article -- basically saying that the only real design artifact in software is the source code.

http://www.developerdotstar.com/mag/articles/reeves_design.html

It's funny but from that perspective (source code is design) it becomes clear that one of the most important features of a language is readability and simplicity.

Perhaps what we need is a hierarchical language, where a high-level version can only specify certain constraints (much like an UML diagram does) and can be converted automatically into a visual syntax (this would automate generation of diagrammed design documents).

Later layers of implementation would allow the iterative design to be tested in greater detail, and the final layer would result in a working program.

You can do this to a certain extent in C++ - i.e. create a UML diagram, forward engineer it into C++ stubs, hand-off the stubs to a team of programmers -- but I would like something that is seamlessly integrated as part of the language.

Monday, June 8, 2009

Ruby/Python - Generate Code from my Domain Specific Languages - Visual Studio 2008

There's a new news item on Visual Studio Developer Center on how to generate code from a domain-specific language.

Is the equivalent of an eclipse plug-in for a new language? I know people rave about eclipse, especially for java development, but I used it's progenitor Visual Age, and an early java-based version of eclipse, and wasn't too impressed by the response times.

I'm running a Quad-core 2.2 GHZ computer now (how quaint and underpowered this will seem in the future! How many giga-processor do you have?) and it should be fast enough ... but like they say you only get one chance to make a first imperession. I wish Microsoft (or someone ..maybe I should just do it) would release an interface for Python and Ruby that is well-integrated with the existing runtime engines out there instead of only supporting the MS IronRuby, IronPython.

Why would Microsoft do this? Well IronPython and IronRuby don't have a large userbase anyways, and Microsoft would probably benefit more from directly supporting the existing userbase of Ruby/Python programmers (they could develop on windows and deploy on Linux ... but once the camel gets it's nose into the tent ..) and feeding on the migration of those developers to IronRuby and IronPython, if they are so inclined. Why would they be so inclined? Microsoft might fully support a general cross-platform runtime engine in it's silverlight that can be run in firefox and IE explorer, and make a really fast high-quality compiler that produces the fastest run-time code around, not to mention access to MPF from Python across platforms using silverlight.

Friday, June 5, 2009

VB Call Stack

How do you bring up the VB or C# Call Stack window to debug?

It's in Debug -> Windows -> Call Stack, also available with Ctrl+L

Used to be you could right click in the bottom somewhere to bring it up - I guess they made it more explicit. However, keeping it in Windows option only under the Debug Menu option was kind of hard for me to find, for some reason.

I think it would make sense to provide all the Debug windows under

View -> Other Windows -> Debug

as well.

Tuesday, June 2, 2009

Restoring an image to a different computer

1. Try to have the new c: drive the same size or bigger than the original image.
2. install the windows cd
3. format the c: drive to the correct size.
4.boot up with your norton cd, or image for dos/linux, this is what I use.
5. Restore image.
6. Do not boot up to windows now!!
7. Install Windows cd and reboot.
8. Enter recovery console.
9. Do a fix boot (fixboot)
10. Do a fixmbr
11. This is optional if you have trouble, you may not need to do this:
Do a Bootcfg /rebuild
Type in "Microsoft Windows XP Home Edition", if this is your platform.
/fastdetect (fastdetect)
You will have to find out more info on this as I am a little pressed for time. You might have to delete c:\boot.ini file first.

12 Reboot to cd
13 Install new XP (enter)
14 Repair existing Windows installation. (R)
*important otherwise you will lose everything and install a new installation. All this does is install windows over windows with the correct drivers for your system.
15. Let it reboot and pray.
16 Reactivate.