I have to say it depends on who you have...
I have charter cable and they advertise upto 25mbit down and 3mbit up.
It obviously depends on where I am trying to download, but I get consistent speeds of between 23-30mbit down and a pretty solid 3mbit up. I'm not a huge fan of charter cable, but they have always been right at or above what they advertise for me.
I'll second this.. it forces you to learn touch typing. what is interesting is that this skill still transfers back a bit when you use a "flat" keyboard. However.. once you start using one I'll warn you that you won't want anything else. Only note is you will want to keep a regular keyboard of a gaming keypad around for games.
Well what's funny is that not only was it an easy test... but I gave them a pencil and paper.. "do it in whatever language you are confortable with (or pseudocode) and come get me when you are finished," I said. I also included a very short design section where I ask people what a database schema would look like and what an GUI would look like to get an idea how they design and had 10 general c# questions. I prefaced the questions with, "I don't really care if you know c#, but this gives me an idea of how deep you have delved into it." I also said.. "take as long as you would like. I am not in any rush," and left them alone in a private room.
So I certainly didn't tried to keep the anxiety as low as possible. As a longtime programmer, I certainly knoe this profession is not know for having the most extroverted people.
Strongly recommend it. I am back doing some C++ work as I type this and I feel like I am in the stone age (Don't get me wrong it has it's uses.)
C# is great and amazingly fun and satisfying when you get used to using generics, anonymous methods and reflection (nevermind the new stuff coming out in C#3.0)
I am far from an expert, but when you have code that you designed in such a way to wire iteself up when you drop a new assembly in, there are few things more satisfying as a programmer. It's just "neat".
LOL.. yep.. I simplified it in my example. I left the else part off because actually that wasn't what tripped people up.
The way you did it is the way I would have solved it too, however most people took the approach of the "if..if else..if else..else". I would have accepted either way as long as it was right.
I really wish it were that simple.. these people have MASTERS degrees in computer science. I really don't know what to say. I really couldn't beleive they were so inept as to make a simple mistake. The mistake most of them made was in the test you ended up with a if statement that should have been
if(a and b) else if (a) else if (b)
What they did was
if (a) else if (b) else if (a and b)
I was floored that people with computer science degrees.. masters none the less could possibly not think the problem through enough to solve it right. I mean sure I asked them to write it on paper, and the ordering in the requirements if followed literally would make you write the (a and b) at the end. But seriously... you couldn't look at your written code and figure the sequence needed to be changed to make the last case actually happen?
I think there are alot of people out there looking for work that have degree's but little or no apptitude and people that do know what they are doing or have good apptitude get snapped up fast.
Let me tell you.. people can and will hire a diamond in the rough.. if you are good. I mean good at problem solving and pretty bright, all you need to do is get your foot in the door and there are literally thousands of ways to do that.
You want a programming job, try making "demo reel". I mean make some cool little programs and polish them up. They need to be something useful.. nothing huge and attach a link to your cover letter.. include a link to a website you designed as an advertisement site for yourself. If you take the initiative you can break into the industry VERY easy.
You might not immediately get a job at Microsoft or Apple, but I guarantee there are businesses from large to small that always look out for people that have a passion for programming and can display the raw talent even if they have never done it for a living before.
I did the same thing 10+ years ago.. I now am a self-taught (no college) Software Architect and run a development team. I know good programmers are needed because I hire them myself. So don't let people spout doom and gloom, it is still lucrative and in demand as long as you can program yourself out of a paper bag. You do have to be adaptable and you need to always be ready to learn something new, it is not an industry where you often get chances to "coast", but it is definately worth it.
Totally 100% agree... I must have interviewed 30 people before I filled my last programmer position for my team. I hired a guy in who had never actually worked with the language we use (C#).
Seriously... the other 29 canidates that I brought in couldn't write a 3 case "if" statement in the right order.
I made up a test (Well copied it actually: http://www.codinghorror.com/blog/archives/000781.html/) and I thought to myself, "There is no way this will help me filter people out, this is WAY too easy." But I decided to go ahead and try the simple test just to see how people would approach it. To my shock.. every single person failed it except for the guy I hired.
I suddenly realized my own place in this job market was MUCH better then I had thought before. (Being totally self taught and working by myself or with small teams, I used to wonder how well I stacked up to what was out there) If you are GOOD at programming there is PLENTY of oppertunity in the US for programmers. You hear me smart kids? We can certainly use many many more good programmers.
Yes, but you understand the fundamental difference I hope. The Nachi worm was a worm that had to FIND infected hosts. Therefore it had to look using a port scanner which when you have thousands of machines scanning thousands of IP's creates huge amout of traffic.
In this situation, the beauty is that you don't have to create a "worm" in the classical sense. Each infected client maintains a "peer" list so all you do is "fix" it's peers, it would cause a cascade failure of the botnet and use up much much less overhead than the Nachi example.
Yeah, but again it raises the question about why nobody has tried that with this botnet. The situation is drastically different. The Nachi worm had to FIND other infected computers, which caused a lot of traffic. In this situation we have infected machines with a command and control framework that works through peer-to-peer, therefore each infected machine already knows a set of infected peers. You should be able to instigate a cascade failure of their botnet but inserting commands into the network.
If the command and control and updating is done via peer to peer instead of a centralized server, why has nobody created a "Vaccine" that would spread itself back to all the infected nodes. The code can't be that hard to crack to determine how to insert new functionality into the infected hosts. Just inject a new command to spread this update to all your peers and after you succeed, close down all of the command and control vectors. Cleanup and fixing the holes originally used for infection would clearly be useful too, but unnecessary to contain the damage. Really there are tons of things you could do.
I mean this might create an "arms race" where they continue to lock down access to the botnet, but I would love to see the looks on their faces when large sections of the botnet stop responding to commands.
Seriously as "Brilliant" as these guys are I guarantee there are probably people smarter that can crack their network. I know what I am talking about is probably not legal, but it surely is ethical.
Elegance in form, layer upon layer, subtle and nuanced.... These are all there in a beautiful symphony, a masterful play or even a well-crafted program.
The level of these attributes all depend on the skill of the author, composer or programmer. I have no doubt that there are works of programming as elegant and nuanced as any of Shakespeare's works. For those who do not understand how to program, and even those that are not adept enough to appreciate the levels of complexity resident within a modern software system, most of you will never see the beauty of a well crafted software system. I will agree that the vast majority of programmers lack the creativity and vision to create a truly elegant system, just as most writers will never approach the level of skill required to write the next Romeo and Juliet. Those that do however can craft works that are worthy of challenging the greatest works in the human history.
The levels of elegant complexity in a well executed system are mind-boggling. Layer upon layer of systems simple and sleek on the outside, yet more complex than you can imagine on the inside.. all working in unison. Properly crafted these systems adapt to new conditions. The masters can design systems that truly "change themselves". The art becomes the artist.
I ask you think about that the next time you sit down and type a response.. think about ALL that is going on underneath the surface between you hitting that key and it appearing on this site.
I have to say it depends on who you have... I have charter cable and they advertise upto 25mbit down and 3mbit up. It obviously depends on where I am trying to download, but I get consistent speeds of between 23-30mbit down and a pretty solid 3mbit up. I'm not a huge fan of charter cable, but they have always been right at or above what they advertise for me.
I'll second this.. it forces you to learn touch typing. what is interesting is that this skill still transfers back a bit when you use a "flat" keyboard. However.. once you start using one I'll warn you that you won't want anything else. Only note is you will want to keep a regular keyboard of a gaming keypad around for games.
Probably should have tested myself on grammer and spelling....
Well what's funny is that not only was it an easy test... but I gave them a pencil and paper.. "do it in whatever language you are confortable with (or pseudocode) and come get me when you are finished," I said. I also included a very short design section where I ask people what a database schema would look like and what an GUI would look like to get an idea how they design and had 10 general c# questions. I prefaced the questions with, "I don't really care if you know c#, but this gives me an idea of how deep you have delved into it." I also said.. "take as long as you would like. I am not in any rush," and left them alone in a private room.
So I certainly didn't tried to keep the anxiety as low as possible. As a longtime programmer, I certainly knoe this profession is not know for having the most extroverted people.
Strongly recommend it. I am back doing some C++ work as I type this and I feel like I am in the stone age (Don't get me wrong it has it's uses.)
C# is great and amazingly fun and satisfying when you get used to using generics, anonymous methods and reflection (nevermind the new stuff coming out in C#3.0)
I am far from an expert, but when you have code that you designed in such a way to wire iteself up when you drop a new assembly in, there are few things more satisfying as a programmer. It's just "neat".
LOL.. yep.. I simplified it in my example. I left the else part off because actually that wasn't what tripped people up. The way you did it is the way I would have solved it too, however most people took the approach of the "if..if else..if else..else". I would have accepted either way as long as it was right.
I really wish it were that simple.. these people have MASTERS degrees in computer science. I really don't know what to say. I really couldn't beleive they were so inept as to make a simple mistake. The mistake most of them made was in the test you ended up with a if statement that should have been
if(a and b)
else if (a)
else if (b)
What they did was
if (a)
else if (b)
else if (a and b)
I was floored that people with computer science degrees.. masters none the less could possibly not think the problem through enough to solve it right. I mean sure I asked them to write it on paper, and the ordering in the requirements if followed literally would make you write the (a and b) at the end. But seriously... you couldn't look at your written code and figure the sequence needed to be changed to make the last case actually happen?
I think there are alot of people out there looking for work that have degree's but little or no apptitude and people that do know what they are doing or have good apptitude get snapped up fast.
Let me tell you.. people can and will hire a diamond in the rough.. if you are good. I mean good at problem solving and pretty bright, all you need to do is get your foot in the door and there are literally thousands of ways to do that.
You want a programming job, try making "demo reel". I mean make some cool little programs and polish them up. They need to be something useful.. nothing huge and attach a link to your cover letter.. include a link to a website you designed as an advertisement site for yourself. If you take the initiative you can break into the industry VERY easy.
You might not immediately get a job at Microsoft or Apple, but I guarantee there are businesses from large to small that always look out for people that have a passion for programming and can display the raw talent even if they have never done it for a living before.
I did the same thing 10+ years ago.. I now am a self-taught (no college) Software Architect and run a development team. I know good programmers are needed because I hire them myself. So don't let people spout doom and gloom, it is still lucrative and in demand as long as you can program yourself out of a paper bag. You do have to be adaptable and you need to always be ready to learn something new, it is not an industry where you often get chances to "coast", but it is definately worth it.
Totally 100% agree... I must have interviewed 30 people before I filled my last programmer position for my team. I hired a guy in who had never actually worked with the language we use (C#).
Seriously... the other 29 canidates that I brought in couldn't write a 3 case "if" statement in the right order.
I made up a test (Well copied it actually: http://www.codinghorror.com/blog/archives/000781.html/) and I thought to myself, "There is no way this will help me filter people out, this is WAY too easy." But I decided to go ahead and try the simple test just to see how people would approach it. To my shock.. every single person failed it except for the guy I hired.
I suddenly realized my own place in this job market was MUCH better then I had thought before. (Being totally self taught and working by myself or with small teams, I used to wonder how well I stacked up to what was out there) If you are GOOD at programming there is PLENTY of oppertunity in the US for programmers. You hear me smart kids? We can certainly use many many more good programmers.
Yes, but you understand the fundamental difference I hope. The Nachi worm was a worm that had to FIND infected hosts. Therefore it had to look using a port scanner which when you have thousands of machines scanning thousands of IP's creates huge amout of traffic.
In this situation, the beauty is that you don't have to create a "worm" in the classical sense. Each infected client maintains a "peer" list so all you do is "fix" it's peers, it would cause a cascade failure of the botnet and use up much much less overhead than the Nachi example.
Yeah, but again it raises the question about why nobody has tried that with this botnet. The situation is drastically different. The Nachi worm had to FIND other infected computers, which caused a lot of traffic. In this situation we have infected machines with a command and control framework that works through peer-to-peer, therefore each infected machine already knows a set of infected peers. You should be able to instigate a cascade failure of their botnet but inserting commands into the network.
If the command and control and updating is done via peer to peer instead of a centralized server, why has nobody created a "Vaccine" that would spread itself back to all the infected nodes. The code can't be that hard to crack to determine how to insert new functionality into the infected hosts. Just inject a new command to spread this update to all your peers and after you succeed, close down all of the command and control vectors. Cleanup and fixing the holes originally used for infection would clearly be useful too, but unnecessary to contain the damage. Really there are tons of things you could do.
I mean this might create an "arms race" where they continue to lock down access to the botnet, but I would love to see the looks on their faces when large sections of the botnet stop responding to commands.
Seriously as "Brilliant" as these guys are I guarantee there are probably people smarter that can crack their network. I know what I am talking about is probably not legal, but it surely is ethical.
Elegance in form, layer upon layer, subtle and nuanced.... These are all there in a beautiful symphony, a masterful play or even a well-crafted program.
The level of these attributes all depend on the skill of the author, composer or programmer. I have no doubt that there are works of programming as elegant and nuanced as any of Shakespeare's works. For those who do not understand how to program, and even those that are not adept enough to appreciate the levels of complexity resident within a modern software system, most of you will never see the beauty of a well crafted software system. I will agree that the vast majority of programmers lack the creativity and vision to create a truly elegant system, just as most writers will never approach the level of skill required to write the next Romeo and Juliet. Those that do however can craft works that are worthy of challenging the greatest works in the human history.
The levels of elegant complexity in a well executed system are mind-boggling. Layer upon layer of systems simple and sleek on the outside, yet more complex than you can imagine on the inside.. all working in unison. Properly crafted these systems adapt to new conditions. The masters can design systems that truly "change themselves". The art becomes the artist.
I ask you think about that the next time you sit down and type a response.. think about ALL that is going on underneath the surface between you hitting that key and it appearing on this site.