Expensify CEO On 'Why We Won't Hire .NET Developers'
TheGrapeApe writes "The CEO of San Francisco-based, VC-backed startup Expensify wrote a post on the company's blog about why he considers .NET experience on a resume a general liability, saying that it will 'definitely raise questions' when screening for developers in his shop. Quoting: '.NET is a dandy language. It's modern, it's fancy, it's got all the bells and whistles. And if you're doing Windows Mobile 7 apps (which the stats suggest you aren't), it's your only choice. But choosing .NET is a choice, and whenever anybody does it, I can't help but ask "why?"' Does he have a point? Or is it counterproductive to screen devs out based on what platforms or languages they have used in the past?"
But choosing .NET is a choice, and whenever anybody does it, I can't help but ask "why?"
I do .NET because that's where the money is. Next question please!
Because I happened to attend some mandatory classes in University that dealt with .NET it's suddenly a liability on my resume?
Actually I don't think I've ever included .NET work on my CV before so I guess it's not much of an issue.
Its a great way to screen candidates. If you program in .NET you're probably less sophisticated and skilled than if you programmed in C or Java on Linux.
I've been using C# at work for some time now as a co-op, not because it was my first choice, but because that was what we were told to use. I know other languages, and I'm quite good with them.
It's just as well. Anyone who thinks .NET itself is a *language* isn't someone I want to work for.
Only known ONE .NET programmer, and he was damned fine, thing is, he was a damned-fine C++ programmer too, so ...
I don't know the meaning of the word 'don't' - J
However, if you need to make a 1.7 oz burger, you simply can’t. There’s no button for it.
$50 says this idiot has never programmed anything in his life.
What, did the /. editors feel that we do not normally have enough language flamewars, so they put as many flamebait articles on the front page as possible? First the CMU article, then the C++ article, now this.
Let's try to stay civil this time.
Palm trees and 8
I'll make sure not to hire Expensify. Why? Well if they have a language-zealot mentality, then I'm not going to like what I get. That is the sign of code hacks, not developers. Real developers can develop in more or less any language. They'll have their favourites, of course, and use different ones for different jobs, but they won't write off a given language for ideological reasons.
I can totally understand and support not hiring .NET only developers, particularly if your market is non-Windows. I mean someone who only does .NET may well be the aforementioned "code hack" and of course is little use if you are doing Android development. but that you'd count it against someone that they have done it? That just speaks of ideological zealotry, not anything practical.
One of my coworkers is our UNIX and Linux lead. He runs those servers and so so well. He has hacked many a script to make Linux work well in our unique environment. He does back end development on our website, which is LAMP. However can can truthfully put .NET development on his resume. He has done some .NET stuff for the Windows side, and also does it as a consultant. It is not the only thing he does, but it is one of his many tools and I'd expect him to list it.
He's a very skilled individual and to exclude him because he has additional knowledge of MS development would be really stupid.
So to me, this CEO has proclaimed "Don't hire my company. We are zealots who will insist in coding in a certain language, even if your project would be better served by something else."
Thanks for the warning bud.
I'm mainly learning .NET because it's a requirement as part of my university degree in management information systems. I wanted to learn regular C++ or Java as those have tons of applications, but .NET, and more specifically C# is required for pretty much any computer related degree these days. Whether this is due to lobbying by MS or due to many businesses using it, I don't have any idea, just it's that the university requires it.
Careful with names containing L slashdot.org/~AiphaWolf_HK slashdot.org/~AlphaWoif_HK slashdot.org/~AiphaWoif_HK
.NET (like Java and old versions of Visual Basic) lets stupid programmers who usually wouldn't be able to do anything at all, do a bad job of something. So I can see where it gets it's bad reputation from.
However, for intelligent and talented programmers, .NET increases the speed that they can write code greatly. Unless you are someone like Amazon, Google or Oracle then developer time is much more expensive than CPU and RAM costs. Desktop computers have been faster than we need them for years.
.NET is also simultaneously lower level than Java (it supports pointers and pointer arithmetic), and higher level (LINQ, extension methods, better generic support, F#, TPL), so I can't see why you could pick on .NET devs and not on Java devs.
You can't claim .NET is Microsoft only either, Mono runs on *nix and works absolutely fine for server code and most windows forms code.
I dream of a nation where a man is not judged by his skin color but by an number assigned by a credit rating agency.
It is a platform with a whole range of supported languages including f# and c#.
This guy says he spends "about half his time" trying to recruit hotshot developers, and then he says something like ".NET is a dandy language." And as for it being "your only choice" on Windows Phone 7 -- does Windows Phone 7 even run .Net? I thought Windows Phone 7 apps were coded in Silverlight and XNA?
This guy sounds like yet another brainless blowhard CEO, nothing more.
Breakfast served all day!
Dear Slashdot,
Thank you for propagating this non-news publicity stunt in true Slashbot form. You never disappoint.
Love, Expensify
Who the fuck are Expensify? What, if any, notable things have they accomplished?
I agree that the person who wrote the piece this article is about has a point. I don't think I'd go so far as he does, but I can definitely see why .NET would be a negative, as well as having a Java-only resume.
In truth, I've always been mystified as to why anybody would invest the time or energy in learning so much about Microsoft's platforms. It's not like that knowledge would do you much good if Microsoft were to simply vanish from the planet.
On the other hand, all the stuff I've learned about computing outside the Microsoft world will do me a whole ton of good even if several major vendors leave the planet. If RedHat dies, for example, it's not like my Linux knowledge is useless. If the FSF dies, my knowledge of C++ gleaned by using g++ isn't useless. If Oracle goes up in a puff of smoke, my knowledge of Java will not go to waste.
But if Microsoft were to utterly disappear, we'd have about 5-10 years of useful programming that could be done before all the other platforms outpaced your aging, no-longer-maintained platform so far that a good 60% of your knowledge was useless. It's a dead end because you've inextricably tied yourself to one, and only one vendor.
And recognizing this trap for what it is goes a long way in my evaluation of a candidate.
Need a Python, C++, Unix, Linux develop
The dude doesn't understand the first thing about .NET
It is not different from everything else out there.
WTF? This dude is on crack.
Why did this even get posted on /.
Some pointy haired moron goes on a rant (that will likely be accepted on face value by a plurality of /. readers), why is this newsworthy. Why would anybody want to work for this twit. This story should be moderated flamebait and troll.
John McAfee 'It was like that time I hired that Bangkok prostitute; to do my taxes, while I fucked my accountant'
I go to uni in a city where there are two... Shall we say "competing" universities are. The methodologies are incredibly different. At my university, there is a very very strong emphasis on theory and steps are taken to ensure we know more than one language. The other is an MS shop.
The guys I know doing programming at the other uni know a bit about the theory and are damn good .NET programmers, but they always have issues moving to another language, even if it's something syntactically close like Java. I might not have been taught .NET at university, but I picked it up really quickly because of my previous experience with other (sometimes weird and obscure) languages like Ada, Modula and SmallTalk.
tl;dr It's not a bad thing so long as it's not the ONLY thing you have ever used
but I kept running out of wire.
Klingon, and preferably they can recite Hamlet in its entirety.
It just shows me how reliable they are. As in no interest in an outside life, and won't notice when we look them up.
Yes, it typically takes longer to achieve proficiency in C++ (meaning able to be trusted to do unsupervised check-ins into a large codebase) than in C#. But, having .NET on your resume means you're someone looking for shortcuts? Maybe it's the best tool for the job in certain situations, such as writing Windows desktop apps for in-house use. Maybe people learn .NET because they are professionally curious.
I would NOT apply to Expensify as long as this talk radio style idiot is in charge. That's a good way to suffer random career damage.
This CEO has chosen an unfortunate way to be an attention whore. .NET may not be his cup of tea, but to say the experience is a liability is plain stupid. I'd suggest he spend more time generating some positive attention instead of making customers think Expensify is run by a moron.
If you think you've identified an easy way to judge a job applicant, you're probably wrong. A programmer can be good in any language, you need to test his aptitude for logical thinking and learning new things - requires more effort but is more likely to do justice to both you and the applicant.
this argument is just stupid.
My highschool was a trade school where I "majored" in a computer science curriculum. Half of the curriculum was about networking and systems administration, and the other half of the program taught programming fundamentals. During my programming lectures we used a variety of languages. My freshman year we started with web development that included HTML, CSS and scripting with js and php. My first step into programming was with COBOL. I then used learned to use Visual Studio which included lessons in Visual Basic and Visual C++ From my sophomore year onward we used java almost exclusively. I also took a course in C++ as a substitute for my senior year's math course.
I have a basic understanding of programming concepts. I am in no way prepared to make it a day job. However, if i did pursue a career in the field and I brushed up on one of the high-level language this fool wouldnt hire me? So....I have experience with Visual Studio. That doesnt necessarily disqualify me from becoming an excellent Java programmer or C++ or maybe even plain old C *shudder*
As the Java reference has already been well established, as somebody who does .NET daily in both C# and VB flavors, I cannot name a faster way of making the programs I need to do stuff. The frameworks just save us from having to remake and reuse tons of code that somebody already did. Why do more work than you have to?
For those who seek perfection there can be no rest on this side of the grave.
... that this article is flame bait and that it is stupid to identify "bad" programmers by .NET resume experience.
That being said, if you read the actual post, the guy clarifies that what he is talking about is .NET programmers at startups. .NET takes away all the "hard" stuff about programming and automates it, and startups need the type of coders who know how to do solve certain problems without the automatic processing .NET offers.
Just because the U.S. is a republic does not mean it is not a democracy. Democracy/republic are not mutually exclusive.
I've heard of Microsoft, the Seattle based company that wants people to develop in .NET. This is the first time I have heard of Expensivefy, and anyone who calls .net a "language" doesn't sound very technical to me. Also, only wanting people who have eschewed Microsoft sounds a bit RMS to me.
As for why Microsoft uses backslash for separating directories, this comes from IBM and DEC and CP/M using forward slashes for options, unlike that newbie operating system Unix which used hyphens. So when Microsoft added directory separators in 1983 (which predates .NET by some time!) they used backslashes.
It's all about tools for the job - if I am writing code for a 10 cent microchip it is going to be in assembly language. For something performance critical on bigger hardware then a compiled language. For a pretty graphical tool (with no legacy code) I would consider WPF and C# these days, since that lets you develop on the common operating system (Windows) using graphical features developed in the last 15 years (unlike the old-style APIs).
Every CIO makes choices for the technologies used inside their companies. They also make choices for technologies to be avoided for a variety of reasons.
I'm a CIO and to be certain my company isn't stuck with single platform solutions or poor library choices,
a) all our software runs on Solaris, AIX, HP-UX, Linux, Mac and Windows
b) The Linux client cannot use Mono (my choice). PERIOD. We don't allow those libraries on Linux at all.
c) The Windows client cannot have divergent capabilities from the other systems and needs to look and feel like other platforms.
d) We prefer BSD, MIT, Apache licensed FLOSS over GPL or LGPL. I have to sign-off on GPL/LGPL stuff. Commercial stuff needs my sign-off too, obviously.
I agree that this CIO may be going too far, but I do not disagree that .NET programmers have to work harder to write cross-platform. All parts of the world are churning out .NET programmers with that a single skill. THOSE are the developers I want to avoid on my teams. Cross-platform developers who happen to know .NET are not a liability unless they enjoy .NET programming too much.
OTOH, we do have clients that force .NET development for specific projects due to 3rd party mandated tools - ArcGIS, for example. My dev team hates working on that software, so we charge 30% higher rates for that work. ArcGIS is a specialized skill and easily supports the higher costs.
If I were running a Windows-only shop, then I wouldn't make the same decisions. Thank your-favorite-deity that I'm not.
.NET is not a language. In the simplest sense, it's an execution platform (the Common Language Runtime) and a set of libraries that run on top of it (the Base Class Libraries). On top of that, there's a much larger set of libraries, the Framework Class Framework, which includes all of the domain specific frameworks, such as ASP.NET, WPF, LINQ, ADO.NET, WCF, WinForms, etc. .NET itself isn't tied to a particular programming language. Languages need to implement the Common Language Infrastructure and usually compile down to Common Intermediate Language binaries. They then run on the Common Language Runtime and may or may not make use of the various class libraries.
CLI languages include: C#, F#, C++/CLI, VB.NET, Iron Ruby, Iron Python, PowerShell, FORTRAN.NET, Iron Lisp, Iron Scheme, Visual COBOL, Delphi.NET.
It's a decent set of programming languages and tools. It has its uses. It shouldn't be used everywhere all the time. Neither should any language. Good programmers know this and are flexible and language agnostic. Learn good practices, not any particular set of languages.
His rant about backslashes in path names strikes a cord with me. The 8.3 file name size restriction too. It looked like they introduced blanks in the path names specifically to break my cygwin scripts. But these are minor gripes, and as such would not impact my hiring decisions.
sed -e 's/Chuck Norris/Rajnikant/g' joke > fact
I happen to share David Barrett's opinion of .NET, but not his approach to filtering candidates.
The first questions I ask are rather simple ones about the C preprocessor and C++ class inheritance. I need our developers to be well versed in the languages we use to produce products -- those languages are, for us, C and C++ on various platforms and operating systems.
I don't consider any experience or technical knowledge non-useful and wouldn't hold it against a candidate that he or she had .NET or Ruby or any other language/technology on a resume.
I will filter candidates if they're flag-wavers for any one technology because experience has shown me that those folks tend to try to get us to transition to their pet technology and/or don't stay around long, making them poor investments.
I do that filtering in the interview process, I think that rejecting a resume for noting experience with any relevant technology would prevent me from interviewing a potentially valuable developer.
I'm not trolling, but his analogy on McDonalds kitchen sounds like Drupal and other CMS out there. Creating a 1.7oz burger is hard on those frameworks too, even though that's where the money on web development is.
when contacted by recruiters, i'll look at the software stack 1st before going any further in the interview process
It is critical, absolutely critical, to hire the very best people you can find. The output difference in going from a bad to competent to good to great in a developer is exponential, but the difference in cost is merely logarithmic. Only a fool lets his personal prejudices stand in the way of finding talent, whether that prejudice is about race, religion, sexual orientation ... even development languages and platforms.
Maybe the candidate developed in dotNet because that's what he was asked to do by his boss. Maybe he thought C# was interesting, or would get him the job he wanted. Maybe he just *thinks* differently than you do, and so prefers dotNet to Java, Python, Ruby or whatever rings *your* bell.
What you are looking for is somebody whose talent ideally transcends languages and platforms. Somebody you could ask to write something in x86 assembler, and he'd learn it and turn out something pretty good, maybe not as fast as the average assembler programmer could, but the second time around he'd be on par in getting the job done and by the third he'd leave the average programmer in the dust. You want a creative problem solver, a deep thinker, a team player who knows when to take initiative, somebody with real grit and dedication to the success of the project.
What you want is all of that. But you'll never get it. That means *right from the get-go* you're talking about compromises. And this guy's thinking about blackballing applicants because they have experience he doesn't? Jackass.
Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
A framework and language are a means to an end. Having a religious or emotional attachment to either is sheer stupidity.
Please do not read this sig. Thank you.
He either never had, or no longer trusts, his own programming knowledge and skills. He, therefore, can't make informed decisions about programmers and programming and so comes up with arbitrary criteria to make his decisions for him.
It's not .NET's fault. It's the people he's been looking at.
The deal is, if you're a commercial software company, the thing you really want to keep is control over as much of the stack as possible. Why? Because when you've got a hairy performance problem you don't want to find out that it's because of code generated by some "easy to use" wizard. That is now deeply intertwined in 1/10th of your classes.
The sort of developer you want is someone who has been severely burned by wizards in the past and is now a devoted follower of the KISS principle. Someone who walks out of product demos when the salesdroid says "And look! I didn't have to write *any* code at all!"
Chip H.
If you are developing for windows *anything* you have no choice. Apple is the same deal. Android is the way of the future.
Isn't this just a modern-day variant of "goto considered harmful"?
..in all of my years of learning programming, was that "the language doesn't matter" - it was always about the ability to generate language-agnostic algorithms, and to code to the solution, regardless of the syntax. This is really the reason I've stayed interested in programming for 20+ years. To hear that employers - or, to be accurate, given the article, one idiot with hiring decision power - would screen out potentially perfect employees - employees who just might have the Golden Ticket for their company to go IPO and make a bazillion dollars - is really disheartening, and just plain stupid.
Isn't this a classic example of a CEO trolling for attention ?
1. Make baseless, provocative statement
2. Epic traffic and attention
3. ???
4. VENTURE FUNDING!
5. Cash out before the VCs realize you're an imbecile
-Billco, Fnarg.com
Just poor analogies and baseless statements. Another idiot that thinks .NET magically does everything for you. If it could it would be even more popular that it is today. C# is more or less an improved Java. Does he have a hamburger analogy for Java as well? PHBs should never, ever write about programming languages or platforms.
A couple years ago a venture capitalist friend told me about a new startup he was involved with. It sounded promising. But the next time I talked to him, he said they'd decided to build their software on Windows NT, and had just hired a very experienced NT developer to be their chief technical officer. When I heard this, I thought, these guys are doomed. One, the CTO couldn't be a first rate hacker, because to become an eminent NT developer he would have had to use NT voluntarily, multiple times, and I couldn't imagine a great hacker doing that; and two, even if he was good, he'd have a hard time hiring anyone good to work for him if the project had to be built on NT.
from Great Hackers by Paul Graham.
As the island of our knowledge grows, so does the shore of our ignorance.
Stir up a little controversy. Make sure you sound like half dick, half idiot. Get somebody to post it on /. Presto, you've got your company name before the whole slashdot public.
Any thoughtfully written posting would have been completely ignored.
Now stick your head back in your ass.
FTA: ". Big things, like obscuring the networking stack under so many countless layers of abstraction that it’s virtually impossible to even imagine what bytes are actually going over the wire"
using System.Net.Sockets ...
IPEndPoint _p = new IPEndPoint (127.0.0.1, 80);
Socket _s = new Socket(_p, SocketType.Stream, ProtocolType.Tcp);
_s.Connect(_p);
_s.Send(...bytestream...);
Boy howdy, that's just buried in layers.
My Other Computer Is A Data General Nova III.
"It's modern, it's fancy, it's got all the bells and whistles"
I'd say that's a good reason to choose a framework, dumbass. If you're issue is with using frameworks that run on non-Windows boxes, you should take that up with the CTO or whoever makes those decisions. And he'd probably use your own quote to defend his decision, something akin to "frameworks that are modern, fancy, and that have bells and whistles attract developers."
Download free e-books, lectures, and tutorials at bookgoldmine.com
If he can find elite level people who want to work for some one with meaningless pet peaves then it's okay. But, this approach will bite him soon enough. r/ jim
.NET Developer on "Why I won't take a job at Expensify" "Their CEO sounds like a real shwanz."
Dear CEO-person:
You say, to use your analogy, that you don't want to hire people who were cooking at McDonald's because you're trying to roast squirrels. Okay. Looking at the market for roasted squirrels versus the quantity of profitable McDonald's franchises, I conclude that I don't want to invest either my labor or my money in a company that you're leading.
Best of luck anyway,
Me
You're just a flat out fucking liar.
thank you for summing up the economy of the United States, circa 2000-2010
I use to think that only kdawson sucked but really... all the editors suck, they keep posting shit and ruining what little is left of the value of this website.
.NET platform is evolving very fast. It started in 2002 and we are already in it's 4th major version (with many incompatibilities between the frameworks). which means that in order to be efficient with .NET, you've to spend lots of time to learn the new parts of .NET. This also means that you have less time to invest yourself in other technologies.
So, a .NET programmer is likely (not always) to be .NET only (maybe using several langages linked to the .NET platform) or to have outdated .NET knowledge. You see the same with other Microsoft platforms which keep changing in order to avoid their programmer lurking in other platforms' world.
Keep in mind that this is NOT a criticism of the .NET programmers, most people do program in order to earn money to live. But in the current computer world, there is lots of uncertainty... and flexibility (including cross-platform) is a must for any small company which want to have a future...
- On desktop, Microsoft is losing more and more ground to Apple.
- On mobile platforms, Windows Phone is nowhere compared to iPhone and Android
- On Web servers, Apache/PHP is keeping the top, leaving IIS/.NET far behind
- We have Oracle which, with the SUN buyout, has a whole platform (without Windows) for DB storage : Hardware, OS, DB and Programming platform (Java/JSP)
Nobody can tell if Microsoft will still be relevant in 10 years (at least, in the SMB world). If you don't belong to a big company, your .NET knowledge may prove useless in the future... with no fallback given the amount of time you had to spend to keep up to date with the latest .NET framework.
I'll stress out that the CEO of Expensify said that if someone has put .NET on his curriculum, it'll raise questions... He DID NOT say that this would be a showstopper. For someone who learned .NET at school or because he needed to learn it for a former job, it is not a problem... What could be a showstopper would be someone which would be "all out" to .NET.
There is nothing worse than langage/framework monoculture... Someone who would only do C/OpenGL/Motif is as bad as a .NET programmer... But it's quite unlikely that a C/OpenGL/Motif programmer did not look in other technologies (C++/Java/PHP/Perl/...; Gtk/Qt/Swing/...)
I think this CEO is pretty far off the mark. There are good reasons for scrutinizing .Net developers during a hiring process. It is very easy to write software without knowing anything about the task at hand in MS's environment. That does contribute to a large amount of developers out there who say they can program, but couldn't even tell you what a linked list is. It's a serious problem. I'm hiring for a .Net shop and confront it over and over again.
The CEO however goes off and makes a comparison between .Net and McDonalds, saying you can't write good code in it. That's simply not true. You can do anything with it you can do with any other OO/VM platform, but you don't HAVE to. You literally can get away without writing good code. Doesn't mean you can't write good code with it.
I tried it, I broke it! (or it was broken to be more accurate)
Started coding at a young age (8 years old, check) .net
Tried everything.... yep including
programmed pretty much everything, from pic micro controllers and calculators to the microwave and washing machine...
written drivers, databases, graphics, AI, E-commerce systems yada yada... check.
got pissed off with immutable types and borked compiler and ...well.... things closing fucking streams that don't even belong to them!!!!!!!.. check.
(You can always write the stuff in a different language and wrap it up so .net can use it.... is that real cheese not the plastic type?)
thank God the internet isn't a human right.
Well I'll give a big thank you to the CEO of Expensify for:
1) Stating in big bold letters that their company has no desire to hire the best programmers, just the one's that avoid having any of his personally blacklisted technologies on their resumes.
2) Reminding me that as a CEO, I should be careful about what kind of technological bigotry I express on the internet.
3) That I don't have to bother looking into what their products do, or whether we should purchase them
4) If I am ever in a position to purchase their products, to give them a pass.
Thanks you very much David Barrett. Although it is pretty unfortunate that you decided to start off what I assume is your first startup is with such a controversial, and provocative posting. You may have been told in school that "any press is good press", but this industry is full people who tend to judge more on facts than on hype. Best of luck...the backlash (and frantic backpedaling) on this has already been pretty humorous.
I think the guy has a point, though perhaps not well expressed. Coders tend to get into habits if they focus on one language a lot. And habits one picks up writing, say, Perl can get you into trouble in C. Or things that seem normal to a Java developer might not work well in another language. So while it's a bad idea to turn away applicants because they know a certain language, it's might raise warning flags.
I can only see it as a nice marketing trick from Microsoft.
Yup that's all .NET is; a marketing trick to get ".NET" onto people's resumes.
(I have a hunch that the Three Gorges Dam is also a marketing trick by China.. Heaven forbid they would see beyond their damned resumes..)
// MD_Update(&m,buf,j);
It's simple: why would somebody invest time and brain power into learning a tech (.NET) that is by design limited to a single proprietary platform (and not best suited for the server use either)?
People learn skills while on the road. I learned .NET because I had to.
It's not like every job I've ever had I was thinking "what will this make my resume look like, in the event I run into some language snob in the future?"
I'm in it to get paid. If there was money in it, I'd write COBOL apps to run on mainframes that are beowulf clusters of iPads. I have a family to feed and a mortgage to pay so I don't wind up homeless. I don't give a rats ass about much else. Pay me and I write code - that's it.
Weaselmancer
rediculous.
.NET is to most languages what modern civilization is to Neanderthals. Yes, if you can hack together awesome solutions (not just code, but real problem solving, monetizeable software) with disparate languages and technologies then I can admire that. And while I can learn it (and have had to on occasion), that's not how I roll and that doesn't make me any less capable of bringing in the money, which at the end of the day is the only yardstick that matters to any business.
Questioning the use of the .Net framework when doing Windows development is like questioning the use of the J2EE framework for web interface development. Why in the world would you want someone who doesn't know the fundamental frameworks of the environment they're deploying to?
The days of simple APIs is long gone. Every major product or project I've worked on for the past 10-15 years has started with the choice of a framework, followed by the choice of reusable add-ons for that framework. Only the "leftover" custom functionality actually gets programmed by hand.
Doing otherwise is not only foolish, it's a sign of criminal negligence and incompetence.
I do not fail; I succeed at finding out what does not work.
This idiot obviously has no understanding of what "Turing complete" means, nor the fact that .NET qualifies as such. So why does his opinion matter in the slightest?
God invented whiskey so the Irish would not rule the world.
I'm a (largely) .NET developer and I have to say I agree. Statistically I think there are way more bad .NET developers than say Java developers. People don't generally get into Java unless they are actually interested in programming and agnostic to different languages and tools. Unfortunately a lot of .NET developers would never think of using or learning any non-Microsoft piece of technology.
For example:
- An external contractor chose LINQ to SQL (ORM for dummies) over NHibernate for a complex web application
- When asked what the best way was to add CMS functionality to new websites, my fellow developer immediately recommended sharepoint (which he has no experience in, but there are no other Microsoft choices). When really, something lightweight like N2 would make a lot more sense for us.
Plus ASP.NET web forms is a horrible piece of technology. It's amazing how little you can know about the web and still be able to cobble together working (crappy) web apps. (ASP.NET MVC is good though)
A programming language is a tool. Some programming languages have a bigger tool kit than others, but in the end it's all about understanding what you're making and knowing how to do that.
The "fancy" parts of the tool kit, for the things I develop, is only required for a small part of the solution, but that probably depends on the field you're working in.
And to question #4. Once I'm working somewhere and I'm happy there I'll be more than glad to help recruit more people. Until that time I'll be more than glad to bill for the recruiting that I do for you.
Privacy is terrorism.
It's just a toolset. If you're smart, you can fit more than one language or platform up in your noggin and be able to move back and forth. That said, it's a tremendously powerful framework. If I may say so, as someone who goes back and forth between C++ and .NET, I find C++ to be akin to a wrench, hammer, and screwdriver. .NET feels like a compression wrench, a jackhammer, and a power screwdriver. Sometimes, it's a little too much, but generally for most things, I get more done quicker with fewer lines of code, enabling me to spend a lot more time polishing the edges and handing off a more polished product to my customers than I can with C++ or even Java (in some circumstances).
.NET developers out there, they're going to rewrite it for .NET anyway. And they're going to curse your existence the whole time. How does one such as I know? Because I've been on both sides of that mess. I've written code in goofball languages when I was younger, and I've been tasked to replace projects written in goofball, non-widely supported languages plenty of times over the past several years.
.NET because frankly, Microsoft put forth the effort to make that really quite simple to do. I don't like wasting time unhooking my business logic from my web service and hooking it up to my presentation layer just to run a debug, and if I'm not getting a good stack trace, then the toolset I've been given is crap.
The reason I do it, though, is because far more CEOs than some random, obviously big-headed CEO of some startup pay me to write code in that language. And I don't just do "Windows Mobile" for god's sake. I write a lot of web services, and the majority of customers don't care what's running on the server...they couldn't care if you wrote that service in C#, C++, Java...using SOAP, REST, whatever. They just want data when they click a button, and they want it to be up to date. There might be a few nerds who have the opinion that they might get their data a tad faster if they used one or the other, but frankly, over time the more maintainable project will always be the one that works the best...because developers will want to work on it, refactor it, keep it up to date. If you write it in some obscure fad language that has shaky support, guess what developers will do to it once you get another job? They will throw your work away and rewrite it from scratch. And I guarantee that, with the abundance of
And then there's the last thing. I put my support behind a framework or company that provides powerful tools to developers. It's sort of my activist side coming through. If a company could care less about providing powerful, open, extensible tools and frameworks for developers, that's a sign that a company simply doesn't care about the quality of third party products for their platform...and a company that most likely would use their internal tools to trump any project that I'd put substantial effort into that managed to become popular with users. For example, if I were to make a killer cloud service app for iPhone, and Apple saw a substantial potential revenue stream in it, they could easily use their own internal use tools and APIs and put me totally out of business...which is a big reason I don't do iPhone development anymore. And it's also a reason I am highly tentative about doing Android development either, because for all the tools Google puts out, I know they've got better ones behind the scenes and I've seen them kill startups plenty of times by releasing slightly better (or even inferior) services for "free". And when I say all that, I'm also saying that I want platforms that aren't just open and follow standards well, but I want a platform and toolset that is well integrated. I want to drop a breakpoint in my presentation layer code, drop one in my service code, and drop one in my business logic layer code, and I want to debug through each layer to find a problem. I can do that with
While I'm cer
C#/.net is Java without the 80s retro feel, and WPF is the best GUI toolkit I've ever used. I enjoy working with them. Their only significant flaw is that they are Microsoft platform centric.
To be fair, there are plenty of developers who use the click and code features of Visual Studio to create spaghetti. Heck, they may even be the rule rather than the exception. But, still you need to look a little deeper at a resume before you toss it, or you're going to miss some great talent.
The dude can hire whomever he wants. I agree with his point that cookie cutter coders are useless and I can understand his desire to only hire people who can really code. But there are things I don't believe he has considered. >>1. Real kitchens may have better food and better cooks than MacDonalds, but MacDonalds serves a lot more customers. For a startup or small company to grow, at some point they will have to choose a framework or write their own to handle all the customer requests and needs. If they develop their own framework, then it will be niche and likely only used internally. I don't see where being familiar with a niche framework would be a resume enhancer. >>2. Real programmers aren't stuck when frameworks don't have the controls or functions quite what they want--they just write new functions or controls or whatever they need. Real programmers know how to program and so aren't stuck on a particular language or framework. >>3. Since Expensify has dumped on .NET and also Java, I don't see that any experience from them would be a resume enhancer. The world is ruled by .NET and Java. My own priorities are to keep up the with the world rulers to keep my job opportunities optimized. This is why I don't spend much time on niche languages or frameworks. I haven't spent any time on Ruby or Drupal or Coldfusion because they are niche. In the course of work and school I have learned Perl and Python and like them, but they are also niche. I have seen what happens to organizations that get stuck on niche products and stay insular in their development processes--they don't prosper and eventually get outcompeted. And then the niche programmers have a tough time finding new employment.
Nobody heard of expensify until this article.
It's a viral job-add to get geeks, nothing more.
Hard to believe something this stupid got posted.
"But choosing .NET is a choice, and whenever anybody does it, I canâ(TM)t help but ask âoewhy?â"
I dunno... some of us don't go into job interviews and try to dictate what language and platform the entire organization will be using going forward. We call that the "real world". In the "real world", an individual programmer won't be deciding what to work in. It'll be determined by standards, contracts, policies, and in general a bunch of stuff that can be summed up easily: management.
A good programmer is going to be able to deal with that and in some cases will "choose" to work in .net becuase that "choice" is REALLY the choice between having a job or not having a job.
The rest of his post was either flamebait, stereotypical nonsense, or in the case of DirectX just flat out wrong (as commenters on his site were so nice to point out). Other then demonstrating that he likes to blather on his company website about stuff he doesn't seem to know very much about, I'm not sure what he was trying to accomplish.
-- "So they told me that using the download page to download something was not something they anticipated." - Bill Gates
I'm excellent at asm, c, c++, c#, sql, html, js, css, flash, silverlight, wpf, winphone7, obj-c, cocoa, ios and a mouthful more.
This guy knows shit.
I say the same about C in general, VC, VB, and python variants..Python is easier, I will admit, but without a logic base, forget it. .NET.
Mono is more OSS anyway then
I use FPC and BP7.
Not only does the author not know what he's talking about, he's deliberately trolling to get attention from the type of programmers he's looking for. Free publicity from a flame war targeted squarely at /.
Oh and read the job description - ...An incredibly hard worker, even when it's not so fun. There is a ton of work to do, and a lot of it downright sucks..."
"Who We Need...
It's a running joke among experienced developers about the startup that bleeds the very life out of you in exchange for empty promises.
Been there, done that. Fuck that.
Nothing to see here, move along...
Put another way, did Facebook scale out so well because they used a proprietary ( not sure what mono is but... ) approach, or because they
forgot about the platform and just built out scalable technology stack?
Perhaps .Net is eezy way to leverage basic building blocks, but may not represent a competitive advantage that unencumbered geekery can provide. .Net seems like a classic Mee-Too Grab from MSFT. Their Policy of Copy/Corrupt does not advance the art. Less power to em.
Hiring former Expensify CEOs clearly a liability.
I don't care much for .NET, but C# is the most useful language I've ever had the pleasure of writing code in. It sucks, however, that, ignoring Mono, C# is tied to Windows and Visual Studio, both of which are less useful than two liters of spittle.
Microsoft almost always fails at developing and releasing technology, but every now and then they stumble and bumble their way into a quite decent product. C# is the best thing ever to come out of Redmond; Excel isn't terrible; and, um... well if I thought about it for a while I could probably come up with another example.
d'you ever asked carpenter if he had experience with hammers? LabView is a hammer for all that do not need/want programming but need to orchestrate repeating measurements.
4wdloop
I think I see what he's saying, even if it was a terrible and flamebait way to say it. I would assume that if a developer came to him and was working with .NET, but said "and at home I've also tried Python and Ruby for web development, I've looked into some Android development..." then they would take that person on.
But if you say "I did Java at university then .NET ever since for my job" and nothing else, it shows no passion for programming or exploring alternative tools for solving problems. You just work with what you're given.
I've often called Microsoft Windows McWindows because I constantly heard people explaining their choice of platform and software because it was popular. This guy doesn't like MS .NET developers because they picked a platform and SDK which is locked down and dictates too many things which you'll have a tough time doing differently. I was blown away in the 90s when there were all these Windows CE clamshell devices and Palm blew them away with a portrait format device( even though the screen was square(160x160) ) and they all closed shop until Microsoft came out with new version of Windows CE which had a different screen resolution designed for portrait layout instead of landscape. I thought WTF, Microsoft was dictating the display format.
So that's the deal, the guy doesn't want developers who pick a platform that'll get them stuff on their screen fast but when the hard stuff shows up, the stuff outside the box, their platform restricts what they can do or how they approach the solution. That's what I got out of it. And it was fun seeing the McDonalds reference. That "everyone else is using it" shit always pissed me off when other technologies were far far better at solving the task and I've even quit a couple of jobs over it. Both those project failed because the lowest common denominator is not often the choice that you'll succeed with. But money just gets wasted and nobody gets fired for picking Microsoft. You just move onto another project and say thanks for the 1, 2, or 3 years of salary. To some, it's more about building it right, building it to last, building it with just a bit if pride. IMO.
LoB
"Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
Seriously. I'll do it.
I RTFA expecting, like most of you, to want to rip this guy a new one, but here's the thing.
He didn't say he won't hire .net developers. He said he considers it a liability and will want to know why you chose to learn it. He never said there were no good reasons. Hell, a lot of you have posted some. I don't know .net, but if it's what I had to learn to get something done that my client needed, it's what I would do.
So, dearest editors, how about not massively misrepresenting what people are saying? That, or let someone else do it.
Almost 300 comments on slashdot in a handful of hours, I'm pretty sure this guy got exactly what he wanted to get out of his statements.
I've been programming .net since 1.1 .. .I use unheard of things like objects, inheritance, and interfaces. I use complex patterns like constructor, facade, factory, and MVVM. We even use that new fangled JavaScript and sometime Jqeury in our web applications.
I'm sending him my resume now I wonder if I'll get a call back?
So is the CLR.
This article is one of the stupidest things I've read in a while.
"Just press the right button and follow the beeping lights, and you can churn out flawless 1.6 oz burgers faster than anybody else on the planet. However, if you need to make a 1.7 oz burger, you simply can’t."
I assume by this, he means there's something you can't do in it, because all of the shit is built in.
What he seems to forget is that .NET and native code are not mutually exclusive. If you need a 1.7 oz burger, and .NET can only make 1.6 oz burgers...then you should P/Invoke into a native library that makes your 1.7 oz burger. Problem solved.
:(){
Microsoft .NET is not a language. It's a platform.
Does he really not know the difference?
Kriston
The problem with elitisim is that it is a facade.
Humans are only capable of shit. Knowing that your shit and striving not to be is better than being delusional.
I wouldn't hire anyone with majority Windows experience in general. It speaks to their judgement. You decided to use Windows instead of a Mac or other UNIX? In this century? In San Francisco and Silicon Valley? I'm not impressed, because you are not going to know how to do the real version of a task. You're missing key tools. You're hobbled by Microsoft's involvement, not enabled.
For example, when interviewing Photoshop pros, I'm always looking for Wacom Tablet experience (it is amazing that people think they are "using Photoshop" with a mouse) and rarely does someone with Windows experience actually know how to use a tablet. I'm always looking for Photoshop automation experience, because there is a lot of grunt work in graphics, you can make it all go away with a little AppleScript. Rarely does a Windows user know how to automate Photoshop, because it is 1000 times harder on Windows. Further, Windows users don't know color management, which is a bolt-on for Windows, but built-into the Mac. Then a guy or gal comes in who knows Photoshop, the Mac, the Tablet, AppleScript, and ColorSync, and they can sit down and be immediately productive all day. And they won't need I-T help all day, either.
So I get what this guy is saying.
I have a chef friend who told me the most important lesson a chef can learn is to use great ingredients. She said a chef with organic, grass-fed beef and organic vegetables and a little olive oil and fresh oregano and garlic is going to out-cook a more-skilled chef who has to use typical mediocre supermarket ingredients. The great ingredients already have flavor from the start, and the mediocre ones lack flavor from the start. So she said when she is hiring people, the first thing she looks for is their attention to ingredients, because that means they are paying attention to the big picture, they are going to make more flavorful food no matter what circumstance you put them into, what kitchen, what challenge you set for them. I took her advice and even with my very limited cooking skills, I suddenly make great-tasting food because I start with great-tasting ingredients.
The equivalent advice I give people who ask me how can they make digital art or applications as good as mine is "get a Mac." Start with good ingredients like ColorSync, AppleScript, QuickTime, WebKit, Apache, PHP, Python, Perl, Ruby. People come back to me a month or two later and thank me for making them into better artists with that one bit of advice in the same way I thanked my chef friend for dramatically improving my cooking by opening my eyes to the importance of ingredients.
Somebody who chooses to use a Windows machine in the 21st century is not paying attention to the big picture. They may be able to cook you a meal, they may know how to bake and broil, but they will not make you any great tasting food.
And if you are talking about mobile applications specifically, then somebody who went through 2008-2011 and did not get into Xcode? You have to wonder is their passion mobile apps? There is a whole PC replacement cycle between 2008-2011 and they didn't buy a Mac, on which you can also run Windows, so that they could make an iPhone or iPad app? Even with my limited Windows experience, if Microsoft had done iPhone in 2007 and iPad in 2010 instead of Apple, I would have a copy of Windows 7 and Visual Studio and would have made apps for those devices. So someone who spent 2008-2011 doing .NET is not part of the mobile game. You have to be suspicious of that person at an interview. You want somebody who makes mobile apps, not Microsoft apps.
Managed code.
Why? Managed code is not tied to an architecture, thats one advantage Windows 8 ARM will have over previous attempts to expand to PPC and Alpha.
This sig has been distributed under the Creative Commons license.
Folks, .NET language (framework actually) is bad, or that people who code with it are bad. He's just saying that for folks who list .NET experience and specifically just .NET experience that's not a good feature for his company or as a rule start up companies in general. All he said was that people that work so long in that environment tend to get locked into that environment and have trouble writing code that's portable. He also made a factual assertion that folks should check out for themselves. I quote from the article:
I can't tell if there's a lot of shilling for MS, or if it's honest feelings, but there seems to have a lot of rage and anger at this guy. I can't help but wonder if you folks read the same article I did. He's not saying the
go to any list of startups, maybe look at YCombinator’s recent graduate class, or Scoble’s list of picks for 2010, or Sequoia’s list of seed companies — or go find a list you like better. Do a curl (or your .NET equivalent) on each domain, and see how many are running a Window’s server: I think you’ll find the fraction very small. Don’t get me wrong: there are a lot of people who aren’t interested in working at a startup, for a lot of very valid reasons. But if you are the odd person who is interested, it’s worth asking: why do so few use .NET?
Now that's a factual assertion. Test him out. See if he's right or wrong. You might not like the results you see, but that's reality. I think it's worth considering his question about why do so few start ups use .NET? It's not as if the world is lacking for people who have .NET on their resumes, or that .NET is something released last year.
CS and Software eng hiring is much more driven by business guys who, ask questions like.. I kid you not "Do you know HTML"
I'm a skilled reverse engineer who works in C++ and obviously assembly language, yet I don't know all but the simplest HTML.
That said, your point stands; I could learn HTML very quickly, artistic techniques aside.
"Screw Sun, cross-platform will never work. Let's move on and steal the Java language." - Visual J++ Product Manager
Microsoft has attempted to hide the Internet behind a layer of proprietary abstractions. Whether you were developing an application for the Internet or for old-school client/server technologies was supposedly irrelevant. Given time, this spec slipped away, but it's idiosyncrasies remained.
Consequently when you write a .NET application for the Internet, not a single term in your vocabulary is the same as that of a Perl, Python or Ruby programmer. WWW standards are rarely, if at all, referenced.
Should you place a .NET programmer in front of a Perl web developer, they won't be able to communicate initially, if at all. Their initial (frustrating) dialog will consist of probing attempts to pin down each other's terminology and formulate a common "pidgin" vocabulary.
Astonishingly, this problem did not exist with Microsoft's older pre-.NET developers, who used the ASP framework and the lighter and simpler language VBScript to do web development. Those technologies were consistent with that of WWW standards(ASP was a CGI-like framework). Those developers quickly move to Perl, PHP, Python, and other languages and frameworks without a hitch. In contrast .NET programmers have to be taught everything from scratch, beginning with HTML.
I write C# code with mono on Linux machines. Ying-Yang. People like this guy are idiots... Which is why I predict in 10 years no one knows who Expensify is.
allow me to translate. quotes FTA:
...we have an army of recruiters out scouring the globe, leaving no resume unturned. Taken all together, this creates a lot of resumes. So many that we don’t look at them, because resumes — let’s be honest — are totally worthless.
we use the shotgun approach for the initial round of hiring so it looks like tonnes of people are trying to get in the door. this makes it looks like the position is in high demand. we expect the candidate is absolute grateful for the oppotunity to work with us by the time they get to the final round so we can negotiate lower than usual pay. after all:
experience is cheap
so really the kind of person we're looking for is:
The right sort of person is so passionate about coding, they can’t be stopped from doing it. They typically started before high school — sometimes before middle school — and never looked back. They write everything from assembly to jQuery, on PCs to mobile phones, doing hard core computer graphics to high level social networking. They’ve tried everything.
we expect them to almost be a machine cranking out quality code (now that years of fine tuning has been applied). they should work very long hours and it should all come out clean. after all they said they enjoy doing it, so regardless of how mundane the code writing phase is they should be happy at what they're doing. if they're not it's their own fault and our company then has absolutely no responsibility in the matter.
Programming with .NET is like cooking in a McDonalds kitchen. It is full of amazing tools that automate absolutely everything. Just press the right button and follow the beeping lights, and you can churn out flawless 1.6 oz burgers faster than anybody else on the planet.
However, if you need to make a 1.7 oz burger, you simply can’t. There’s no button for it. The patties are pre-formed in the wrong size. They start out frozen so they can’t be smushed up and reformed, and the thawing machine is so tightly integrated with the cooking machine that there’s no way to intercept it between the two. A McDonalds kitchen makes exactly what’s on the McDonalds menu — and does so in an absolutely foolproof fashion. But it can’t go off the menu, and any attempt to bend the machine to your will just breaks it such that it needs to be sent back to the factory for repairs.
we want to be able to change anything at anytime in our system. there is no such thing as coding standards. there is no such thing as sticking to one platform. we love the use of buzzwords when we sell to clients, so if we can throw in that our system is using the brand spanking new 'psueso' language, the coder damn well better be able to adapt and have it all running.
* note: i've been in a mcdonalds kitchen in the last year. these days they're a fair bit more adaptable. sure there are certain things they still can't do (buns are buns, are buns. no way in hell you're getting thicker fries). but at least with the example he gave, you can get a fatter burger. just involves breaking up the meat from different patty, then squishing it on top of a standard one. after that, they simply over pick ingredients from the various trays available.
See, Microsoft very intentionally (and very successfully) created .NET to be as different as possible from everything else out there, keeping the programmer far away from the details such that they’re wholly and utterly dependent on Microsoft’s truly amazing suite of programming tools to do all the thinking for them. Microsoft started down this path when they were the only game in town, explicitly to maintain their monopoly by making it as hard as possible to either port Windows apps to non-Windows platforms, or to even
Will somebody just shoot this fucker (the CEO)?
If you don't like a language, fine, don't use it. But don't dump on the people that are.
I predict this fucker's company will have a union because asshole management usually end up with them.
When Fascism comes to America, it will call itself Anti-Fascism, and tell you to give up your guns.
I've been in IT over 15 years and have several software-specific certifications on my resume. My certifications cover both proprietary and FOSS, and none of them are from Microsoft. I've put in a lot of hard work of over the years to study, learn, and earn those certifications. Why do I bother?
1) To improve my chances of continuing to earn a good living.
2) Because each time I take on a new vendor certification, I use the vendor's outline of what they think I need to know to get organized and create a study plan outline for myself. And then I use my evenings and weekends studying EVERYTHING on my outline, including whatever as many hands-on exercises as I need to become grounded in that technology. So when I take a certification test, it's to make sure I learned the concepts and the nuances that vendor thinks are important. But I always end up learning quite a bit of extra stuff along the way, and all of this always makes me better at what I do.
My 2 bits.
I work for a competitor of Expensify that built their system on the .NET platform. So there....
Coderz 4 Life
Expensify CEO on why he thinks Startups, startup programmers, and generally anyone in the YCombinator scene are better than you.
Most of the application is GUI and the "business logic." None of that requires those last 5% of performance; it won't even see it. But what it does require is the speed of development (there is a lot of business logic) and reliability. That means that explicitly called destructors, along with pointers that live their own life, are a bad idea. In C# you still need to be aware of the lifecycle of your objects, of course, but it's much easier than in C++ where you must employ very rigid coding standards to be sure who owns what and when the pointers to objects become invalid.
So that was about C#. The .NET, which is somewhat orthogonal to the language, is something that you practically must use if you code for Windows. And most people use Windows. I have a decent experience with Qt, but it is nowhere as good as .NET simply because it is bound by its cross-platformeness. Such simple things as saving of window size and position become complex because size of decorations differs.
Of course WPF is not easy. You need to know most of it to write anything useful. You can't start with stdio.h and later progress to io.h or something. In WPF you must know it all - or at least most of it; binding is the first and the largest obstacle that you must conquer. Once you do that, though, many things become automatic.
I don't know why knowledge of something - especially of a library that is mandatory for anyone who claims to code for Windows - might be detrimental on a resume. I would rather think that voicing such a viewpoint is telling too much about whoever said it.
.NET provides a lot of functionality to the developer that lets them write code instead of dealing with minutiae, only he mentions it as a bad thing and its not. With .NET, if you want to dig into something, most likely you can and if you can't write that portion in C++ and wrap it. No sense reinventing the wheel or at least part of the wheel.
Are there circumstances where a higher level language is not appropriate? Of course.
Does it use more memory? Yes.
Is it slower in any way than natively compiled code? Yes.
Is it the 1980s? No.
Does .NET allow you to be a bad programmer? Yes, but read the next entry.
Does any language allow you to be a bad programmer? Yes, maybe in some similar ways but also in completely new ones.
There is no difference. If someone is a good programmer, the likelihood is that they are going to excel at any language you throw at them.
Bad for startups? You mean, like Unity, who based their product on Mono, and now has a game engine stack for like 5 different platforms, including Android?
This guy is an idiot. Most *good* .NET developers I know have a strong background in C, C++, and other lower level things. Most love tools like reflector, because they *are* concerned with things like how the network stack works, or the time complexity of the built in collections. He's just pissed that those same developers can whip up simple internal tools complete with GUI and multithreading by the time his C developers figure out why libXXXX isn't linking.
I couldn't help but notice that you conveniently skipped over the fact that M$ Windows (regardless of the mcflavor) still controls nearly 90% of the market share. Until you understand why this needs to be mentioned, your longwinded opinion should probably be marked as flamebait.
Because when you've got a hairy performance problem you don't want to find out that it's because of code generated by some "easy to use" wizard.
There are no wizards in .NET, outside of the creation of a new, blank project when you ask for it. The WPF code is as KISS as possible already. Everything that you have is expressed as code - there are no hidden databases of properties that manifest themselves only at compile time. If you want you can write WPF applications in Notepad, and they will compile to exactly the same binary as an IDE would make.
I don't mind some .net stuff on a resume but if it is heavy MS technology then I would surely pass. Then again we are strictly a LAMP shop.
Got Code?
back in 2009, shortly after the economy went down the drain, i spent six months at home, benched by my resourcing agency, because people just werent hiring, never mind hiring external people. At the end of the six months, i got two possible assignments, neither of them in my field fo focus (java), but you dont tell the guy who's been paying your salary for the past six months of doing nothing, that you'd rather stay home another six months then take those jobs.
I ended up taking one of the assignments, and getting a perm contract by that company, because i didnt want to go back to sitting on the bench. I ended up with a 2 year hole in my java experience and 1.5 years of intersystems cache (search the daily wtf for "a case of the mumps" for some insight). I'd rather spend the rest of my career working in vb.net then going back to that crap.
Right now i'm back at working in java, got a job at a large company with a large java group, and i love it
People, what a bunch of bastards
Yeah, I don't know where this myth of .NET being some cookie-cutter code generator. Possibly from the fact that MS was early and successful in bringing WYSIWYG GUI development tools to the masses. Still, it's just untrue and silly. Even WF (Workflow Foundation), which is supposed to be the "drag and drop programming language", is not trivial and is far beyond the ability of an entry level programmer to develop a non-trivial application in. In addition, it still all just boils down to code - either in XML or in plain old C#.
Some of the hardest core developers you will ever meet are .NET developers, and many of them big into open source. Go tell the NHibernate guys about how cookie cutter and silly their platform of choice is. Or go tell some of the enterprise developers who make $200k a year designing scalable corporation wide applications about how lame and unused .NET is.
If I have to hear one more system admin cum Perl coder at some shitty startup pontificate to the world on how much of a failure .NET is and how nobody uses it, I'm going to vomit into my mouth...just a little bit.
Pretending .NET isn't a valid platform for many types of applications is as silly as claiming it's the perfect platform for every application.
I tend to learn programming languages/environments as i need them (and i am willing to invest my free time for that). I am not picky in that point. So in the eyes of the guy i am lucky that i did not need .net. But probably he would find other critical points (like TCL, LISP and postscript).
As far as i understand flexibility and the will to learn are now not valuable to modern companies, and as far as i understand the guy said: Sorry, if a customer asks us to develop a windows mobile client, tthen we just tell him: Sorry, we dont hire people undertsanding that for the sake of principle.
My opinion is: if there enough money/opprtunity for something then i should caclulate the expected gains vs the cost of learning what needed to do it.
Sounds like the CEO just got a bunch of VC money and now thinks he is important. Nice way to get some press though. Too bad your product is not exciting enough that people are talking about it.
That comment alone gives me the image of a clueless Dilbert-esque pointy-haired boss who has no business leading anything. Whoever is funding the start-up, needs to fire him and get someone else.
If he's going to make broad (and stupid) decisions based on something like this, he should at least be able to distinguish between a framework and a programming language. And even then, he's STILL an idiot...
'The unexamined life is not worth living' - Socrates
Some people use Windows, others Mac, some others Linux and they probably end up trashing the other bunch based on their choice. It's the same with programming and this guy. Employers have the money and they can decide how to hire people based on very subjective reasons. I remember stories of people trying to be smart-asses by asking prospective employees if they knew by asking if they knew about some random fact and discarding people who either didn't knew or didn't agree with their views. I have had to deal with companies who would discard you right away if you didn't live in the place where they do business, that is even if you tell them that you can start working the next day and are willing to relocate and cover all expenses. This in general would make you think twice about working in a place where they judge people based on a whim, but if you don't have a job, then by all means get rid of .NET in the resume you send to Expensify. That way everybody is happy and you might be on your way to land a job. When there aren't many options people have to deal with a lot of crap, including stuff like this.
I use Unity3D and program in Javascript and C#, with Mono and in the iPhone case somehow eventually Objective-C as the end target. I don't think of the few .NET frameworks that I use as any particularly revealing "choice" I'm making. It's just a tool in the chain. To prejudice against it would be like prejudicing against Windows vs Linux for Qt developers. Dandy? Like the 18th century term? Oh dear.
What you and so many others forget is that their are countless startups and only a few successful ones. What seperates the two? The latter keep costs from exploding before their is an income.
Let me put it another way. If you say you want an 800 dollar chair at your interview for a startup, should they hire you? Surely expensive chairs are part of the whole startup, vc-backed, bubble economy? Yes, the failed ones. The successful ones run linux of commodity hardware coded on cheapo chair picked up at a 2nd hand sale with the office cleaned by one of the girlfriends... oh okay... sisters.
Adapt? There is no time. Startups don't have the resources to train or re-educate people. You got to hit the ground running on bare feet with nobody sweeping the floor.
I have seen the .NET aprroach tried and they wasted several salaries on a server park complete with licenses and someone to keep track of them before they had even a proof of concept up and running. Solaris was the .NET of the last bubble. Sure, 100.000 on a couple of servers and 50.000 on an Oracle license when you haven't had a single penny of revenue. Why not and 1000 dollar chairs for everyone!
Most startup's have a fixed capital and no income until the product launches. This means ANY costs, no matter how trivial is reducing the time you have to produce a working product. And we all know software products rarely are finished on time. Even 400 bucks can be the difference between a developer having no choice but to work elsewhere or having just enough money to pay the rent to buy the startup a month to finish. I seen attempts fail simply because they no longer had the budget to ship goods to customers at a webshop launch.
What the .NET defenders just don't get is that he is not questioning their coding skills or the usefullness of the development environement but their attitude towards cost vs benefits. He is even polite enough to ask the .NET developers why they think the cost of .NET is worth the benefits.
So far not a single .NET developer has answered his question.
I think that is telling.
MMO Quests are like orgasms:
You may solo them, I prefer them in a group.
It also happens to be a conglomeration of languages.
I must admit, I was wondering, when I read the summary, whether he meant one specific .net language, the underlying run time which shines (murkily) through all the .net languages, or the dev environment (No, don't waste your breath on that quibble, the environment is, mathematically, a language.), the implicit glue language(s) which hold the framework together, the framework, or what. I read the friendly article, and it's clear he means all the above.
I wouldn't want to work with him, I'm guessing, because my family means something to me. I'm passionate about coding, But I can hold concentration without sacrificing my sleep and my family, and I don't do arbitrarily short deadlines just to pull some VC backer's back side out of the fire.
VC is a matter of luck, not some innate virtue. I don't like to see people suffer, but market windows are, in the end, almost always self-induced mirages. The deserve what they get when they do that.
Guys who put arbitrary deadlines on schedules are precisely the sort of people who got companies like Microsoft started, and if they succeed, they tend to go down the same path toward mediocrity.
Meaningless competition is precisely the reason the world is heating up.
That said, these days, I spend more of my time coding in natural languages, and my target systems are a bit softer and wetter than the systems that run the languages either you or this David Barrett guy are talking about.
Computer memory is just fancy paper, CPUs just fancy pens with fancy erasers; the 'net is just a fancy backyard fence.
This guy is only hurting his employees and investors. As an employee of the monopoly that owns the market Expensify wishes to join, I can see why they'll never be a threat to my job. We use a mix of mainframe, Linux, and Windows and a mix of shell scripting, ASP, Java, and .NET. Using the right tool for the job is a bit of a better business strategy than fighting against a development language and attempting to build a business simultaneously.
Snobs at Expensify: keep it up. It's good for my stock options!
but anyone who's ever been involved in a hiring process - particularly one where there's no HR department to throw away blatantly useless applications - will know what I mean.
Hiring people is easy. Seriously, I can put out an advert tomorrow and I'll be buried in CVs (.uk doesn't use the term "resume") by the end of the week. I've seen CVs for entry-level positions advertised in the local newspaper come in from the other side of the world.
Hiring decent people - people who'll fit in with the team, people who can do the job, people who won't give up at the first hurdle but instead dig around to enhance their understanding to solve a problem, people who, when faced with what should be a simple problem (someone earlier mentioned opening a file, writing a string to it and closing it in ASP.NET) that winds up being two hours of work and 50 lines of code doesn't sit back and think "There. Done it." but instead thinks "That's ludicrous. There must be a better way...". Hiring people like this is surprisingly hard.
So when you've got one opening and a hundred CVs (which is entirely possible in the current economy) - you probably only have time for about 5-8 interviews. You develop shortcuts allowing you to eliminate candidates before you even speak to them. Some of those shortcuts will be similar no matter what company you're applying to: Advert said "Write to Mr. Brown", covering letter says "Dear Sir/Madam" - bin. If they can't be bothered to read the advert properly, they don't get an interview.
Other shortcuts - particularly if the person doing the screening has developed experience which suggests that by and large, a particular trait is a big minus point - are inevitable. It sounds like this guy has done exactly this - he's interviewed one too many people who's spent years doing nothing but business applications in Visual <Language> and can't think outside the framework that imposes.
1. you can buy cheap PCs with windows for less than $300.
2. Visual Studio Express is free.
3. previous generation books are virtually free in bargain bins.
4. If they are so cheap they cant afford windows, they cant afford to pay for the coke the stupid fuckers drink.
I have personally programmed in assembly in the old days on >2 cpus, C on >5 platforms, Guis on >4 OSs, and ofcourse tonnes of C++/JS/perl/php/.net too lately.
And you know what... its all the same shit, the same shit apis, the same buggy behaviours, the same crappy func names or struct names or error names. .Net if you're code is just too slow, you can use a C DLL , but hell 90% of all code could be written in Bash scripts with DLL calls.
At least in
and about OO? it all goes obsolete too fast to be useful really, oh yeah that lib from 1998 is so useful now, NOT. And too many change too often that its darn stupid. If you have to break compatibility , then that just prooves how show shit your code is that you didnt do it right in the first place really. Write some wrappers for god sake.
Its all the same shit, its all ascii, its all files, its all english, its all 90% loops and func calls and IFs galore.
Liberty freedom are no1, not dicks in suits.
I would have expected to find this on TheDailyWTF.com
I agree, wholeheartedly. Microsoft embraces innovation (as long as it is theirs) Like I was once told about (pre Obama) General Motors....Microsoft is a Bank that happens to sell Software. Every innovation they have was either bought, co-opted, or outright stolen from someone else. While elements of their technology do have merit, I would be content to see their cor products function without nearly daily "security updates" (truly an indicator that the cor product ins flawed). Open source is the wave of the future. Microsoft is big now, but it is a staggering giant, too encumbered by corporate infrastructure, dividends, and shareholders.
"Any sufficiently advanced technology is indistinguishable from magic." - Arthur C. Clarke
Just got a new Mac and I'm slowly re-building my dev environment on it, I need to send this CEO a note of thanks for reminding me to get Mono installed so I can play with .NET/Mono at home.
Sig is on vacation
When I got out of college, I found that the every developer job required five years of recent, verifiable, professional, enterprise level, experience. As a new grad, I did not have all that, so I had to take whatever jobs I could get. Unfortunately employers refuse to understand this, and would often hold my "choice" of programming languages against me.
If I had the choice I would go for Python, Java, C, C++ or a combination of those, simply because they are cross platform.
Ever heard of Mono? C# is the new Java.
Was Win32 a language? I am so confused.
He is completely unable to understand that it runs only on Windows and produces applications that only run on Windows. Both of which carry a license fee.
.NET. You don't have to use Visual Studio, you don't have to use SQL Server. You don't have to use Windows. Look, no licensing fees at all.
.NET": because it's a tool that lets us get our job done faster, with less bugs, and higher maintainability. And like any tool, sometimes it's the right tool, and sometimes it isn't.
Mono.
Again, there is no fee to use
As for "why
Alright, time for some standards: "Why do you feel that Python is so bad? What do you find wrong with it?"
Python is a fine language, except for its future.
When a language changes the fundamental way a mathematics operator works from one version to the other, you cannot invest your time working on that language.
I don't want to go carefully over all the code I ever wrote to make sure that every '/' is changed to '//' wherever I want '5/2' to mean 2 and not 2.5. I have more important things to do.
Quoting: '.NET is a dandy language'
Its not a language, jackass, its a framework.
Not to sound like a broken record, but this guy is a moron. Coding in .NET is no more limiting than coding in any other language.
- The Mono C# compiler? Written in C#.
- Paint.NET, a very capable graphics tool? Written in C#/.NET
- Visual Studio 2010 IDE? Built upon Windows Presentation Foundation (.NET)
As a Development Manager for a large .NET shop, I find that the only limitations we run into in regards to .NET is the developer writing it... but that can be said about ANY language.
The only point I can give the original article is that if a developer has ONLY .NET experience on their resume (and limited college coursework), because as other posters have pointed out, it is important that a developer understand true computer science versus the just higher level that they work on.
I have had personal experience with .NET programmers, and the author is completely right in his MacDonald chef analogy. The problem with .NET programmers is that they only seem to be able to do .NET. The work they produce tends to lock you into Microsoft products and royalties - they seem to be incapable of doing anything else. I advised one of our development departments to build a product that was being proposed on top of available open source code, adding customisation and our own front end as the value added part we would charge for - ie. leverageing other people's GPL licensed work in order to reduce development and maintenance costs. Unfortunately the team hired for the project had too many programmers with .NET experience including the project manager.
They ignored my advice, and I watched them develop a product based on .NET from scratch which cost a lot of development time and money. When completed, it was too expensive to compete to compete with rival products because it was dependent on the Microsoft infrastructure requiring licenses for all that Microsoft stuff. It was also buggier and feature limited because everything had to be developed from scratch on a limited budget. In the end, the product just didn't sell, and the plug was pulled. All the programmers on that project got laid off.
He can keep doing what he's doing as I don't want to work for a pompous asshole like that anyway.
.Net does indeed suck,
the .NET languages (C#, F#, etc.) are some of the cleanest, most usable languages I've programmed in, and they're all integrated into one virtual machine -- which is incredibly useful. The problem with .NET languages is, as the article suggests, they hide a lot of functionality from the programmer. If I have an odd problem I want to solve in .NET, I either have to jump through hoops to implement a solution myself, or use standard .NET features in a way in which they weren't designed. That said, the features .NET languages do have are often so extensive that most problems can be solved with a couple of lines of code.
So yes, I have .NET on my resume, but I also have C, C++, Python, Ocaml, Perl, ObjectiveC and Actionscript. Is it a crime that I actually LIKE the .NET languages?
What I find interesting is that this guy is talking all about startups. The company blog goes back to 2008 though. If Expensify still is looking at themselves as a startup, maybe they're the ones who are stuck in a certain paradigm and can't get out of it. There's a difference between "startup" and small business. At a certain point you're not a startup anymore. There's the possibility that this guy is just looking to develop his product to a point he can sell the whole shebang to a huge company. He will think of his company as a "startup" until he's rid of it, and in that case, I wouldn't want to work there as a developer. It's been nearly 3 years, you are either a viable company or not, you may still be small and growing, but I feel that's different than startup. I could be totally wrong about what people mean by startup though. I worked in small business my entire life (though not "tech") and if you're around for this long I don't see how you're still starting up.
Not all life is cyber. Extra Income
My company recently outsourced all development to an Indian firm that talks a great line about .NET. That sat well with the highly-placed idiots that undertook to do this, but the results have been a disaster. Why? Because none of the stuff being outsourced was written in .NET, duh? Much as the owners of this company want to sell their souls to Microsoft, they don't have a code base that lends itself to .NET'ification. The code works, and has strengths of its own, but square peg; round hole. And by the way, these outsourcers are not particularly good programmers in the first place. Nor are they good at (or even encouraged in) thinking creatively. And this is one of the biggest outsourcing outfits.
So, sure, if you've got VB code you want to 'modernize', .NET's probably the best route. If you have anything else, .NET expertise is mostly irrelevant, and to the extent that .NET promises management the ability to clone coding drones at will and move them among different projects as needed, the dynamic of buying into that 'promise' is IMO a recipe for failure. At our company, they're already talking about throwing away the existing code base and starting over in .NET. Not because it's a good idea, but because they've dug a hole with no other exit. Better to survive a few more years dangling the prospect of a shiny new .NET app in front of the investors. Never mind that the (huge, vertical market) app will never materialize in time to be relevant in the market.
Posted from my Android phone. Oh, I can change this? There, that's better...
Please note that he doesn't actually give a list of what he can't do with .NET.
I think the lesson to learn here is that writing blog posts like this when you are looking for programmers is a rookie mistake. I suppose thats why they call it a start up.
I was crazy back when being crazy really meant something. (Charles Manson)
You need to vomit
Seriously. It's no more restrictive than any other framework I've used, and in some cases it's better since functions for instance expect a String object rather than a QtString and so you don't have to write an explicit conversion between the two back and forth. Is that a large issue? not really, it's a mild annoyance at worst, it's just I can't think of any where .NET is the more restrictive one so unless he's railing against any and all frameworks (naming him candidate for idiot of the year), this is merely anti-Microsoft zealotry, plain and simple.
No problem is insoluble in all conceivable circumstances.
Languages that run on the .Net platform are C#, VB, C++, Python, F#, Cobol... among others.
Nothing to see here, move along. I've about 25 years of coding experience under my belt, with anything from assembly language on various pieces of crap though Perl, C# and even VB.NET - and I've never been more productive than now, with VS.NET + ReShaper. You can do blazingly fast apps with it, just like with any other language - if you are a good programmer and can come up with an appropriate solution. I still do some assembly and C/C++/OCC for my pet projects but whenever possible I go with C#.
With that said, there are lots and lots of untrained 'developers' with zero experience, kids that decided to become programmers when they were in their twenties. Most of them are useless and won't be of any use ever. And most of them seem to prefer .NET. So to some extend I see where is this guy coming from. But to judge a resume negatively by the fact that one has .NET experiece or even prefers it, is a mistake.
How is this a choice? You use what your company ends up going with for a project which you may or may not have much input on. You do what can be done with it, and at the end of the day it doesn't matter because ... they're all crap.
Ask them to write code in their interview. You can write garbage in any language, and you can write good code in (almost) any language.
If you can't tell much from candidates coding during interview then you're not competent to interview developers and you should step down from that responsibility before you destroy your software company.
All his diatribe says is that the Expensify CEO is a pointy haired boss who reasons by McDonalds analogies. Given Expensify's dull and obvious product (useful though it is), perhaps that shouldn't be surprising.
sorry that you think that, mightbe that I’m just a slow learner, I never did enough work in the MS environment to get the hang of it. Somebody else said it much better that i can : .NET lets you make stuff even when you are an horrid programmer.
I might be such a horrid programmer, but it never bothered me, or the functioning when I was using Delphi, and as the stuff still works....
but what am I arguing an abusive AC for ?
95% of technology startups are really just service organizations with the false belief that they need to invent knew technology to be successful. Sadly, most of these firms will high low level "engineers" to build essentially a website with application like features. Those engineers, working with a focus on either 1) recoding something they did previously but so horribly they were fired for it 2) select technologies and solutions which will improve their marketability at the expense or producing a usable site 3) solve scaling/performance technical issues their employer may never see, 4) ignore massive quantity of quality third party open source projects / solutions / toolkits / services because they only see the coding effort and wholly ignore operations/testing/code maintenance. Although my education was in C on Unix, I find developing marketable, scalable, significant products on Microsoft .NET, when accounting for the cost of engineering, operations, licensing, maintenance (on shore and off) favors .NET when the organization / staff is primarily Microsoft centric. (Duh).
We used to say ... it's faster to go from 0 to 60 with Microsoft, but if you want to get to 100, you need to be on *nix. I still believe it's true. But that said, 95% of the shops out there won't ever need to go 60 mph ...
GM
Sorry, i seem to have given the wrong impression. The trap part is to lock developers and by extension users into the Windows environment. Someone else said it better: You can get away with some horrid stuff in .NET and it still looks like you made a nice program.
It comes with the my nephew made our website kind of thinking. Programming, like all other creative processes, is part skill, part Art. The tools can sometimes hide or compensate a lack of skill. But at the end it comes down to the Art.
For some reason I can not get my head fully around Microsofts programming platform. I like the small tools approach, creating independent (more monolithic) stuff that rests only on the Win32 API. This approach makes it work for all Win32 platforms. The stuff i made from scratch with .NET are not working any more, but my old Delphi stuff is still going.
It sounds like this twits beef with .NET is that it dumbs down Windows programming.
.NET.
.NET would be a bad language to choose. However, I doubt that. The vast majority of app development is mainstream stuff to run on the mainstream platform. And that's going to be way more than 50%.
He'd be right about that. Here's the real newsflash: 50% of all programmers are below average. If you need to think twice about that statement, you're one of them.
For the programmers who are not the elite, they can produce reasonably high quality Windows apps very fast and very cheap using
Now, you may be building a cooling control system for a nuclear reactor, and
So, expensify can go off and hire the 'very expensive' coders who are 'very skilled', and pay them lots of money, and charge their customers lots of money for the privilege. And assuming that those are the contracts he wants, Expensify's CEO is doing the right thing to get them.
If those are not the contracts he's chasing, well then, he's probably just demonstrated that he's in the bottom 50%.
RTFA. He says that .net on a resume is not a show stopper. He just wants to make sure you can do real code, and care about programming, rather than just wanting to click some fancy prewritten stuff together without actually knowing what is going on. I think it's absolutely fine to expect a CEO to expect this of those he is looking to hire. I don't think he is really dissing on MS or the .NET platform at all in fact, just recognizing that things are a bit different in the MS world than they are outside of it. If an MS shop was hiring, I don't think they would say open source/linux/whatever is a liability in the same way, but they are definitely looking for people schooled in their culture, and I know from experience I have as hard a time adapting to that world as a very experienced .NET developer would have adapting to the other.
I do .NET because that was the natural extension of classic ASP, which everything was done in at my first programming job.
Technoli
9 out of 10 startups fail. 80% of all software projects fail. what are the odd thats this company employs a single person in the top 50% of all developers?
This company is going to fail. Not so much because of their view on .net developers, but the fact that they assume those who develop with C# or were required to at their last job aren't capable. Boy I've seen this story played over and most of those companies don't exist anymore.
This guy doesn't need the "best programmers in the world". He's doing a feature-heavy payment card system that integrates with business expense reports. That's nice for people who travel too much, but it's not rocket science.
He's not doing cutting-edge technology, like machine learning, or autonomous robotics, or game engines for really big seamless shared worlds with intelligent NPCs, or modern high-end CAD. He needs competent people, but not people who are breaking new ground.
For what he's doing, ".NET" might not be a bad choice. They might have launched sooner.
I think everyone here and on the site is missing a more important reason to avoid .NET developers: it's a Microsoft product. It's kind of top heavy, it's otherwise somewhat useful and it would even be a worthwhile development model, but that doesn't matter----it's a Microsoft product, and like any Microsoft product reliance upon it is the LAST thing you ever want in your work environment.
I think Expensify should instead say that if .NET is all you know then they won't hire you. There are perfectly good programmers who may have picked up C#/.NET as one language and you wouldn't want to throw out all the other experience they have to offer over that one little detail. What you want to reject are the .NET junkies that have never learned anything else,
Not because he may be wrong about .Net developers, but because its not his job to determine the best qualified software developers in his company. Its his CIO/COO's job to determine what kind of software developers the company should acquire. Do you want your CEO picking the programmers he's never going to supervise or interact with? Or focusing on getting investment capital and increasing the value of the company?
In any case, a trivial issue. Less .Net programmers for his startup, more .Net programmers for companies that care more about the quality of the employee.
There is no America. There is no democracy. There is only IBM and AT&T and DuPont, Dow, General Electric, and Exxon
Um, .NET isn't a language.
So basically if your a startup you don't want to whip something out fast and efficiently and instead just burn down all of the VC money?
This is why CEO’s and business people, should not be envolved in the technical hiring process. Here is what they are missing. C++. you can code in unmanaged c++ and managed c++.net at the same time with visual studio. What does that mean? it means you can code to the moon. without using the CLR or needing MONO or anything. Im also pretty sure you can code in Win7 mobile in eMbedded c++.
I will not disclose a 0 day again I will not disclose a 0 day again I will not disclose a 0 day again I will not disc
Without knowing what the objective is one cannot condem or praise this decision. There simply is not enough information.
Who the fuck are Expensify? What, if any, notable things have they accomplished?
Judging by your tone, I'm guessing that you don't actually want to know the answer, but Expensify is a browser-based expense reporting workflow tool. It allows employees to create expense reports easily from their credit card statements, and it keeps track of receipts. Employees can submit these expense reports electronically and managers approve electronically.
Optionally, the suite can even hook into quickbooks to save on data entry, and into paypal to pay the reimbursement.
For small business owners like myself, it's actually a pretty slick product (I use it at my company, if you couldn't tell). Employees like the ease of use, and I like that I can easily locate, approve, print out, etc., any expense report at any time, complete with receipts. If the IRS comes a-knockin' to do an audit, I can hand them a well-organized stack of reports with expenses, categories, and receipts.
There are other similar products out there, but this one seems to do what I want it to do and it's not too expensive.
They don't grade fathers, but if your daughter's a stripper, you fucked up. --Chris Rock
"But choosing .NET is a choice, and whenever anybody does it, I can't help but ask "why?"
Of course its a choice, but whose? Not all companies think to ask every developer which language they'd like to build a project in... sometimes you have to work with an established codebase. And if you do manage to make a silk purse out of that sows ear, don't you deserve extra credit for that?
I don't blame the guy for asking why, but you kinda hope that he's listening to the answer, instead of just writing the candidate off.
What can't .NET do? I wonder how long it would take someone to write an app that did the following in C or php:
I did it in C# in a month.
You're pitiful, and now I know who the AC troll is that's been stalking me here for MONTHS now!
(It's YOU, with your own words quoted telling others to do so with you here http://slashdot.org/comments.pl?sid=1646272&cid=32150544 as my proof thereof!)
You also kept a JOURNAL on me? Hilarious, but... I am going to use that against you, & let others see the scumbag troll you really are:
http://slashdot.org/journal/250596/The-Alexander-Peter-Kowalski-threads--with-pics
That one, from your journal? HILARIOUS! Why? Because here are the facts, vs. your libellous fictions you stupid cunt:
---
1.) I own my own home, and rental properties, PAID IN FULL no less (so I'd advise you stop the libel, or else - & trust me: Ask Arstechnica if I have backed that up before, or see below) - and you tried to say in your journal I "live with my parents"? That's libel, asshole, in case you didn't know it!
This is easily verifiable via public information &/or tax records if you wish... as I have NOTHING to hide.
I.E.-> In fact - I am actually, believe-it-or-not, one of the single largest PRIVATE land-owners in my city (many lots/tracts of land, as yet still undeveloped though, that I intend to turn into more rental complexes in the future in fact).
In fact, I am ALMOST where I have always wanted to be, & worked 16++ yrs. in the Computer Sciences for: INDEPENDENT of having to work @ all! Almost there... can YOU same the same? I doubt it... especially when yoiu botch your contracts with customers... see below, lol!
---
2.) You cited Arstechnica there too. They impersonated me on their forums and stalked me for nearly 5 yrs. online site to site, only to have their own personal websites removed for making literal death threats to me, posting my personal information, IMPERSONATING ME, and libelling myself. In fact, ask Jeremy Reimer or Jay Little about that much (CrystalTech.com ousted Little, & Reimer got HUGE portions of his website forcibly removed after the police were informed of all of this (Det. Felton B.C. CA police in fact, where HE lives)).
Why?
Because I made them BOTH look like fools at Windows IT Pro forums (widely respected) in regards to Exchange Server and at NTCompatible.com on DRIVER_LESS_THAN_IRQL errors in drivers/hardware interfaces... they also stalked me to both those sites, to their dismay (see above).
Arstechnica: HOME OF THE UNDERACHIEVERS OF THE INTERNET, because I asked them ALL 1 simple question back in 2001 after they attacked & impersonated myself:
"What have you all ever done that was noted as good by peers in respected publication, trade shows, newspapers, books etc. in the field of the computer sciences"
Not a single 1 had a thing to put up - just like yourself when I asked that of you & I had a dozen (partial list only on my end of my FAVS only, there are many more & I did them while you probably where still in diapers I wager in the computer sciences)...
It really, lol, "set them off", & truths like that do, & I suspect THAT is why you have libelled myself (bad move)... just like I am doing to you, here now.
You brought it on yourself - I know your real name as well, this is where I have you BY THE BALLS (that is, IF you had them, & your posting as "Tom" here seems to say you WISH YOU DID, lol) if I wish, legally, in fact should I choose to exercise it, for libel.
---
3.) You're also stalking me as an AC & your OWN words prove it here:
http://slashdot.org/comments.pl?sid=1646272&cid=32150544
There are LAWS against online stalking too, you sick freak! Or, don't you respect the law? Apparently not.
"Hell hath no fury like a woman"? More like He
First: Don't try to "play expert" in programming - you've NEVER done a single thing that peers in written publication or trade show contests, books, or magazines etc. said was good.
Also, & above all else? You're pitiful, and now I know who the AC troll is that's been stalking me here for MONTHS now!
(It's YOU, with your own words quoted telling others to do so with you here http://slashdot.org/comments.pl?sid=1646272&cid=32150544 as my proof thereof!)
You also kept a JOURNAL on me? Hilarious, but... I am going to use that against you, & let others see the scumbag troll you really are:
http://slashdot.org/journal/250596/The-Alexander-Peter-Kowalski-threads--with-pics
That one, from your journal? HILARIOUS! Why? Because here are the facts, vs. your libellous fictions you stupid cunt:
---
1.) I own my own home, and rental properties, PAID IN FULL no less (so I'd advise you stop the libel, or else - & trust me: Ask Arstechnica if I have backed that up before, or see below) - and you tried to say in your journal I "live with my parents"? That's libel, asshole, in case you didn't know it!
This is easily verifiable via public information &/or tax records if you wish... as I have NOTHING to hide.
I.E.-> In fact - I am actually, believe-it-or-not, one of the single largest PRIVATE land-owners in my city (many lots/tracts of land, as yet still undeveloped though, that I intend to turn into more rental complexes in the future in fact).
In fact, I am ALMOST where I have always wanted to be, & worked 16++ yrs. in the Computer Sciences for: INDEPENDENT of having to work @ all! Almost there... can YOU same the same? I doubt it... especially when yoiu botch your contracts with customers... see below, lol!
---
2.) You cited Arstechnica there too. They impersonated me on their forums and stalked me for nearly 5 yrs. online site to site, only to have their own personal websites removed for making literal death threats to me, posting my personal information, IMPERSONATING ME, and libelling myself. In fact, ask Jeremy Reimer or Jay Little about that much (CrystalTech.com ousted Little, & Reimer got HUGE portions of his website forcibly removed after the police were informed of all of this (Det. Felton B.C. CA police in fact, where HE lives)).
Why?
Because I made them BOTH look like fools at Windows IT Pro forums (widely respected) in regards to Exchange Server and at NTCompatible.com on DRIVER_LESS_THAN_IRQL errors in drivers/hardware interfaces... they also stalked me to both those sites, to their dismay (see above).
Arstechnica: HOME OF THE UNDERACHIEVERS OF THE INTERNET, because I asked them ALL 1 simple question back in 2001 after they attacked & impersonated myself:
"What have you all ever done that was noted as good by peers in respected publication, trade shows, newspapers, books etc. in the field of the computer sciences"
Not a single 1 had a thing to put up - just like yourself when I asked that of you & I had a dozen (partial list only on my end of my FAVS only, there are many more & I did them while you probably where still in diapers I wager in the computer sciences)...
It really, lol, "set them off", & truths like that do, & I suspect THAT is why you have libelled myself (bad move)... just like I am doing to you, here now.
You brought it on yourself - I know your real name as well, this is where I have you BY THE BALLS (that is, IF you had them, & your posting as "Tom" here seems to say you WISH YOU DID, lol) if I wish, legally, in fact should I choose to exercise it, for libel.
---
3.) You're also stalking me as an AC & your OWN words prove it here:
http:/
choosing .NET is a choice
I beg to differ! .net. Later, after graduating from grad school, the only reason I was hired was because of my previous experience with .net. And guess what! They wanted me to do more .net stuff. I did not get to choose to use Python or Ruby or C.
When I was looking for a summer internship after my second year at uni I did not get to choose where I would work or what development environment I would use. If I wanted to work I had to use
This 'Microsoft sucks, and that's the end of it' thing that's been happening for as long as I can remember is getting really tired. There are reasons not to hire .NET developers, like maybe... hey, we're php/mysql shop, or we're a java/oracle shop; however, none of those reasons should be, because .NET is a bad choice. There aren't many major computer science principles that can't be applied to .NET programming just as easily as they're applied to java, or ruby, or php, or whatever. Niether .NET, nor Microsoft is ultimately responsible for the developer's code efficiency and application design. It's the programmer, stupid! If you already don't understand polymorphism, or inheritence, or decoupling, or whatever else, then java won't make things any better. Maybe 10-12 years ago in the VB-6 days, you'd have a point, but nowadays (and it's been this way for some years now), no. Microsoft, the company, has made some mistakes in the last 10-15 years, no doubt; however, .NET Framework 4.0, Visual Studio 2010 isn't one of them. If you want to know someone's compentency in computer science, test them. Never judge a book by it's cover. I'll tell you right now, there's a php developer who I know personally, that I wouldn't trust to write a 'Hello World' app.
and the 'cdo managers' and banking industry types who profited from all the securitization of the mortgages.
in EConned, as well as The Big Short, a CDO manager is basically described as essentially '[two guys with a bloomberg terminal]'. i.e. they dont really contribute much to the 'product', they are basically just there to sit on a pile of money for appearances sake.
nowdays in China they have 'rent a white guy' businesses.
this sort of thing was going on all over the higher echelons of the financial industry.
in other words... when you get above a certain level in the financial food chain, the tech bubble of late 90's was "just another bubble" that the finance gurus could ride the wave of, like riding the surf.
in "Devil Take the Hindmost" you can even find predecessors of this type of behavior, back to the 1600s, tulip-o-mania, the south-seas bubble, the patent business bubble, etc etc.
1. A Colossal Failure of Common Sense, Larry McDonald
2. The Sellout, Charles Gasparino
3. The Zeroes, Randall Lane
4. Running Money, Andy Kessler
5. And Then the Roof Caved In, David Faber
6. House of Cards, William D Cohan
7. Too Big to Fail, Andrew Ross Sorkin
8. On the Brink, Henry Paulson
9. Confidence Game, Christine S Richard
10. Structured Finance and Collateralized Debt Obligations, Janet Tavakoli
11. The Big Short, Michael Lewis
12. EConned, Yves Smith
13. Devil's Casino, Vicky Ward
14. Street Fighters, Kate Kelly
15. When Genius Failed, Roger Lowenstein
16. Devil take the Hindmost, Edward Chancellor
17. Crash of the Titans, Stephen Ferrell
18. Age of Turbulence, Alan Greenspan
19. In Fed We Trust, David Wessel
20. Diary of a Very Bad Year, by Anonymous Hedge Fund Manager & Keith Gessen
21. Blood on the Street, Charles Gasparino
22. The Two Trillion Dollar Meltdown, Charles R Morris
23. various articles in the WSJ by Carrick Mollenkamp, Serena Ng, etc
24. NYTimes, Louise Story and Gretchen Morgenstern
25. the ProPublica article on Magnetar Capital
26. Fool's Gold, by Gillian Tett (saved the best for last, perhaps)
etc etc etc.
i.e. i do not believe that i have necessarily made anything up or exagerated my points from the actual events of the past 10-20 years in high finance, please respond with specific complaints about my writing if you have a concern that i have misstated something. thank you.
i realize i tend to wander and ramble and meander with crazy talk sometimes, but i try very hard to stick to reality and not go off and have a chalkboard moment. oh well.
I was being completely serious. He's the only person on TV who pays for a small staff to really dig into and uncover and expose what the commies in America and the world are up to. It's an invaluable service and there needs to be one about the hyper-capitalists as well, as they're just as damaging.
I can take the data presented by a source without necessarily accepting the presenter's spin. Standing where I stand, I would prolly take less of your opinion than I do his, but I would take the set of (necessarily selective) evidence presented on your topic under just as serious consideration.
I wish there were "boring" facts and history TV show hosts with obsessions for bringing to light Islamic fascism, and Climate Change, and anything else that might be a *significant* threat to the American middle class way of life.
Attention zealots and haters: 00100 00100