|
As I said in my question, it has integer value in ASCII format.
Can you show an example? Cause I think I already tried, encoding.ascii.getstring() but that did not work.
|
|
|
|
|
akhanal wrote: encoding.ascii.getstring() but that did not work.
really?
byte[] bData=new byte[5];
bData[0] = 55;
bData[1] = 57;
bData[2] = 0;
bData[3] = 0;
bData[4] = 0;
string s=Encoding.ASCII.GetString(bData);
float f=float.Parse(s);
Luc Pattyn
Local announcement (Antwerp region): Lange Wapper? Neen!
|
|
|
|
|
Hi,
My mess, sorry!
I was doing:
float f = System.Convert.ToSingle(s);
instead of:
float f=float.Parse(s);
Anyways, that worked.
Thanks.
|
|
|
|
|
|
Hi All
I've been doing interviews for a large multi national company for a number of C# contractors to work on a greenfield winforms application. In the last month I've interviewed 28 candidates and only 6 have passed our first technical test which is a 1/2 hour telephone screening. What I'm wondering is if our basic questions are viewed by the community as not fair game. Our basic premise is that if you can't answer four out of five of these basic questions (first ten minutes of interview) there is little point in pursuing things further.
1) What is the base object in C#.NET, its public instance methods and when would you use them? - I'm astonished how few people get this. I generally forgive forgetting GetHashCode but Equals?! - only maybe 25% of people get 3 out of the 4 methods (or 5 if you count Finalize which in general we don't).
2) What is a delegate? What is the difference between delegate.Invoke and delegate.BeginInvoke? - Really asking do you know the difference between synchronous and asynchronous programming. - maybe 20% get this.
3) Give a two minute overview of how the garbage collector works? (Looking for what makes an object eligible for collection, when it runs, concept of generations, implications of having a finalizer etc) - very poor understanding out there - I've had 1 good explanation so far.
4) Explain the OO concept of polymorphism and how you can take advantage of it in C#? Why do you think Microsoft didn't make all methods virtual by default? - I.e. whats a virtual function and to understand the performance implications of them. - most get the first, nobody so far the second.
5) Is ArrayList/List<t> a thread safe collection? If not how would you make it thread safe? - most get its not, only some really have any idea how to make it thread safe.
I just don't think these are hard questions, especially given the daily rates we are offering, but maybe I'm being too hard? What do you think?
Whats really strange is we're doing a lot of Java interviews for the server side of things as well and we've seen plenty of great candidates. Maybe there are just lots and lots of very poor C# candidates out there and I'm getting my fair share of them!
Cheers!
modified on Friday, October 2, 2009 6:08 PM
|
|
|
|
|
ewan wrote: 1) What is the base object in C#.NET, its public methods and when would you use them? - I'm astonished how few people get this. I generally forgive forgetting GetHashCode but Equals?! - only maybe 25% of people get 3 out of the 4 methods.
4 methods?? System.Object has 7. Equals, Finalize, GetHashCode, GetType, MemberwiseClone, ReferenceEquals and ToString.
|
|
|
|
|
Fair point - badly phrased in my original post. The question does specify public instance methods not class (static) methods. We don't count Finalize as you can't call it directly but I would accept that. MemberwiseClone certainly wouldn't count as thats protected not public.
|
|
|
|
|
ewan wrote: What is the base object in C#.NET
I would expect anyone applying to know this - plus the answer is in the question!
ewan wrote: its public methods and when would you use them
How often do we actually use methods on object ? I rarely do as the only use for object nowadays really is where generics are not appropriate, and at the first oportunity before doing anything with it it I unbox it. Not an excuse for not knowing the answer, but makes it a pointless question IMO.
ewan wrote: What is a delegate? What is the difference between delegate.Invoke and delegate.BeginInvoke?
Fair question
ewan wrote: Give a two minute overview of how the garbage collector works?
How often do you really need to know this? I don't fully understand it. More important is what is the dispose pattern and when/how should it be implemented.
ewan wrote: Explain the OO concept of polymorphism and how you can take advantage of it in C#? Why do you think Microsoft didn't make all methods virtual by default?
Fair question(s)
ewan wrote: Is ArrayList a thread safe collection? If not how would you make it thread safe?
I'd be asking why you're planning on using an ArrayList instead of List<T> and explaining that thread safety or lack of applies to nearly everything in the framework, and then explain the various methods and costs of trying to acheive it.
ewan wrote: Are these hard C# interview questions? Really??
This may be better placed in the lounge
|
|
|
|
|
Thanks - interesting points.
People have commented at work on if asking about public methods on object is useful. I don't think knowing all 4 (or 5!) is necessary I agree but when to use them is absolutely imperative. If you don't know when to override Equals for example you can't have done much C# - well imho. I might rephrase this going forward.
We ask about the garbage collector precisely because we want them to talk about Finalize vs Dispose and how the dispose pattern is connected to garbage collection (GC.SuppressFinalize etc). We also feel for the types of applications we use which often require a lot of memory analysis to detect memory not being freed it is imperative to know whats going on in the GC.
If you'd have answered my ArrayList like that you'd come straight in for second round!! ArrayList question does indeed go two ways - one is why is List<t> better than ArrayList. Second goes down into the threading route of what can and can't you lock on, alternatives to plain lock etc. It depends on the candidate.
Yeah - I post here very rarely so apologies if this is in the wrong place!
|
|
|
|
|
ewan wrote: we want them to talk about Finalize vs Dispose
Then ask them to.
|
|
|
|
|
They don't seem too hard to me, I'd probably need much more time to explain GC though
But ArrayList? I'd rather not even acknowledge its existence..
Shouldn't you also ask about starting a new thread vs threadpool and what else the threadpool is used for?
Or something like: give a short list of at least 5 synchronization primitives available in C#
|
|
|
|
|
Thanks for your reply.
Absolutely - there are a lot more where they came from! We have specific questions around all of the things you mention.
Just to be clear though the point of my post was however not to ask for more questions but rather to ask are these unfair or unrealistic things to expect someone to know who wants $600+ a day?
|
|
|
|
|
Oh, yea, sorry
How much is $600/day these days ? Is that considered to be a lot?
|
|
|
|
|
Translated to yearly salary that's about $150,000 which I don't think is exactly bad?
|
|
|
|
|
I don't know, if you say so, I don't live in the US so I never really bothered to take a look at what a normal salary is there
|
|
|
|
|
ewan wrote: 3) Give a two minute overview of how the garbage collector works?
Do you have a stopwatch? What if they take 1.5 minutes
This is discussion more fit for the Lounge than a programming forum.
only two letters away from being an asset
|
|
|
|
|
Some of that is like asking a race car driver what compound his tires are made of or the viscosity of his oil. Sure, some may know it, but it won't be an indication of how well he can drive. Plus, some may memorize the answers in order to make up for a deficiency of driving skill.
First, see if the candidate can drive, then try to determine the depth of his knowledge.
1) A fairly pointless question. Object, but I never think about its members, I only override them when necessary -- so at most I might say ToString.
2) Not too bad a question. I use delegates, but I don't recall ever using Invoke or BeginInvoke on them. If you want to ask about synchronous/asynchronous, then just ask.
3) I certainly couldn't fill two minutes with that, because I just don't need to know, that's the whole point of the GC.
4) Polymorphism is a good topic, but pondering some of Microsoft's decisions is best left to others.
5) Right, they're not, but there's nothing I can do about it; all I can do is make my classes thread-safe -- when needed.
|
|
|
|
|
PIEBALDconsult wrote: 1) A fairly pointless question. Object, but I never think about its members, I only override them when necessary -- so at most I might say ToString.
Hehe - ok ok. This is clearly a very divisive question! Despite the howls of protest around this so far I still like this as a question. Maybe I'm just evil....
PIEBALDconsult wrote: 2) Not too bad a question. I use delegates, but I don't recall ever using Invoke or BeginInvoke on them. If you want to ask about synchronous/asynchronous, then just ask.
I agree we could ask directly something along the lines of how would you run a delegate asynchronously but really its just the same question posed another way. I suspect you have used Invoke even if you don't realise it
PIEBALDconsult wrote: 3) I certainly couldn't fill two minutes with that, because I just don't need to know, that's the whole point of the GC.
I think this is an interesting statement. Maybe you are right and its why so many people struggle with it. I naturally assumed that since I have been asked this at every .NET interview this was a totally standard question. Maybe its specific though to the industry I'm in and the type of application we are generally developing where memory and cpu time are at a premium. Food for thought for me.
PIEBALDconsult wrote: 5) Right, they're not, but there's nothing I can do about it; all I can do is make my classes thread-safe -- when needed.
But the point is you know - a hell of a lot of candidates don't!
|
|
|
|
|
ewan wrote: Maybe its specific though to the industry
I'm curious, what is the industry you are in.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Agree. A fairly large UK bank here been doing the phone question for screening. After a while the candidates know what are the questions to be asked and look for standard answers. Sometimes the job agents even give the candidates the answers.
|
|
|
|
|
Hi
I would like to use WCF to implement a named pipe, and what I would like to do is to implement it on a similar basis as you would a normal web service, i.e. using [servicecontract], configuring the app.config file, etc. Scouring the internet I can't seem to find a good example that does just that and the one found in: http://www.omegacoder.com/?p=101 is not the solution I am looking for.
Does anyone have a good example I could follow?
Thanks
|
|
|
|
|
Dear Sirs,
So if the last hour or two has served me properly, there is no standard multi-column treeview control offered by Microsoft like the one at
Advanced TreeView for .NET by Andrey Gliznetsov,
right? (which by the way seems to be an excellent piece of work. I've just started looking at it and it looks well-written).
Does this seem crazy to anyone else? They have obviously developed probably dozens of them (the locals window, for instance, where when perusing a class, you see the class and members' names on the left, each potentially expandable, and their value and type ond the right -- or the stinkin Windows Explorer of Win95, right? with filename on left and details on right)!! This blows me away! It should be a standard, out-of-the-box control! I worked on one with Java recently, and I'm remaking my projects in C# and thought to myself, "Surely I won't have to deal with that crap again, I'm in Microsoft land where they take care of everything you want FOR you ... and so much more," but no.
Anyway, if I'm misinformed and there's some property on the Treeview control that is like Collection(TreeViewColumn) Columns or something, let me know, but until then, I'll muddle through somehow.
Thanks for listening, it means a lot.
In Christ,
Aaron Laws
|
|
|
|
|
LimitedAtonement wrote: Does this seem crazy to anyone else?
Crazy, no. Vaguely disappointing, yes. But, all for the better if I can find a contorl that exactly matches my needs instead of one that only approximates what I need.
LimitedAtonement wrote: I'm in Microsoft land where they take care of everything you want FOR you ... and so much more,"
Which bloody idiot told you that?
|
|
|
|
|
Dave Kreskowiak wrote: Which bloody idiot told you that?
|
|
|
|
|
Dear Mr. Kreskowaik,
I think the control that I described shouldn't be one that would be much different from implementation to implementation. To me, it would be like saying, ``the ListView is useless: it only approximates my needs,'' or something like that, when really it's plenty generic enough to meet my needs just fine in every circumstance (if I have to finagle my classes to fit into it sometimes). That to say, I would much rather Microsoft give me an in-box multicolumn treeview control which would be MUCH easier to do the finagling rather than creating a whole new one! Oh well, I'll keep working on the one from the website.
In Christ,
Aaron Laws
Dave Kreskowiak wrote: But, all for the better if I can find a contorl that exactly matches my needs instead of one that only approximates what I need.
|
|
|
|