HNHacker News
TopNewBestAskShowJobs

computerslol

104 karma · joined July 1, 2010

submissionscomments
computerslol··on A glimpse into a new programming language under development at Microsoft
It looks like you have a very narrow perspective on C#.

I've never tried running .net on a non-windows platform, so I can't comment in that space. I'll leave that to someone else.

As someone who's built bespoke big data applications, scientific computing (if we're both talking about large scale computation for analytics), desktop applications, server applications/services, and web sites (one of which is within the US top 150 on alexa) in c#; I'll have to disagree that anyone working in the language is stuck with LoB applications and ETL tools.

computerslol··on A glimpse into a new programming language under development at Microsoft
Is this a research project, or something that will be released to the public?

As someone that's spent a lot of time learning how to get c# to perform, this sounds fantastic to me. I can't wait to see it.

computerslol··on Ask HN: What new skill or tech you intend to master in 2014?
The black art of hand tuned, run-time emitted, MSIL.

I have done some already; I intend to master it in 2014.

computerslol··on Why are all the 'cool' jobs no longer using .NET?
Thank you for a well thought out response. One of your up-votes is me.

I understand where you're coming from and I don't see your viewpoint as wrong. Mine is different. I see programming as part of an art, the way applying paint is part of creating a painting. It is by-far not the only part.

I totally agree that a good programmer should branch out and gain a better understanding of the world, but I believe the branching out should happen in a different direction.

To call someone that writes books a writer is an oversimplification of their job. Writers, like programmers, specialize. One writer might write non-fiction books in English in the murder mystery genre for an adult audience. This writer has had to develop a solid experience in and handle of the English language. They have had to research and understand murderers, the law and police. They need a solid handle on psychology to be any good. They need to understand the implements of murder. They need to understand the standard plot points of their genre, and how far they can be bent (to interest readers) before they break (and turn readers away). They need to understand pacing, and how to capture an audience's attention consistently. How to keep their material accessible to expand their audience as much as possible, or how to narrow their focus to be a must read for a certain niche. They must know how to get published and avoid getting swindled. Putting words on paper is only a very small part of their job.

If our hypothetical writer is going to branch out into new areas, he's more likely to gain success writing a sci-fi novel (where he can reuse most of his skill) or starting his own publishing company than he is in learning French to write books for the French audience.

Learning basic French is not hard, but it is very hard to know French like a native French speaker (an expectation of your French readers). If he is thinking in English and writing in French, his efficacy is already compromised. If you are writing for the French audience, you will have to take French customs and the French psyche into account. French readers are likely very different from the ones he’s used to, so he needs to understand the psychology and mind-set of his audience and his characters. Publishing a book in France is also likely completely different, with different ways to lose money in a book deal. Learning basic French will only help our writer when he needs to integrate a French character into one of his books.

It would be a little silly to tell a writer that he needs to identify as an English writer if he doesn't know French.

I make consumer products. I am a .net platform developer. I started my career as a designer 14 years ago; and soon realized that there is too much compromise in just graphic design. Every design I submitted at the company I worked for had to be changed (often dramatically) to fit within technical limitations. My designs were created to appeal to my audience, and due to technical limitations, that appeal was compromised. I had already been programming at home for a few years, and decided it was time to become a professional. The second month at my design job I asked to be put on the programming team as well. At the time, we were writing in legacy ASP. I never had a design compromised by technical limitation ever again. When .net was made available, I jumped on it immediately. I loved the ideas behind it and I couldn't wait to be a part of it.

A year or so later, I started realizing that the database design for a new product I was building was hampering my ability to write clean software (also due to “technical limitations”). I asked to be added to the Database team as well. I became a DBA. I was still a designer and developer. A year later, I became a PM as well, and so on.

At this point I have held the titles of senior .net architect, .net team lead, senior .net developer, senior MSSQL database architect, senior product manager, creative director, senior graphic designer, business analyst, and research scientist. I am always a .net developer, but in every job I've had at least two other titles as well. Each of these roles interface with the others, and knowing the others makes doing each of them much easier.

My job is to make quality consumer software. My job is to appeal to an audience. I learn whatever I need to in order to better appeal to that audience. As a whole my audience doesn't care what the software is written in. They care about whether or not it’s easy and pleasurable to use, whether or not it’s fast, intuitive, and solves their needs efficiently.

Now I have my own software company.

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

WPF works, has a number of great features and tricks, and it’s fast if you’re using it right. I assume the developers on WPF moved to the Metro dev team when that ramped up; I don’t know. Maybe they’ll be back. My only issue with WPF is its half-hearted 3D support. Silverlight was an experiment, and it showed. It’s still possible to write great stuff on Silverlight, but the limited audience keeps it from being a solid solution unless you’re doing something that can’t be done as well using something different (DRM video for example) or you are creating an intranet application and have control over all of the machines that will be using your application. It’s a shame, but that future was easily foretold when it was announced.

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

I don’t think you don’t have to master a language to understand its capabilities, but woe to he that tries to exceed them without having a solid understanding of what’s going on under the covers.

In my experience, .net shops are .net shops. Maybe I have been lucky.

In my experience it’s pretty easy to write your own wrappers for C++.

What sort of projects (other than projects targeting non-windows machines) have you encountered where you suggested not using .net?

computerslol··on Why are all the 'cool' jobs no longer using .NET?
It's less about learning a new language, and more about learning a new framework.

As of .net 3.5, the .net framework contained 98 Assemblies, 309 namespaces, and 11,417 types. The framework is gigantic, and after you've spent long enough in .net, your domain specific knowledge of the framework itself is gigantic as well.

As someone who has been building applications on .net since beta, I have no fear at all in learning a new language (bring it on!). I have a fear of losing over a decade of experience with the thousands of classes provided in the .net framework that I use, and rely on, on a daily basis. I know exactly what I'm looking for, how it works, and what the performance ramifications are of each component I choose to use. I know what needs to be replaced with something custom to scale. I know what's doing extra work I don't need. I know the ASP.net page and control life-cycle (intimately), how the view engine works (and how to add features to it), how to replace critical components for custom functionality and how to build custom controls. I know the WPF layout system. I know the quirks in windows forms and GDI+. I know programmatic drawing in both frameworks. I have done machine learning in .net. I have done massive file IO in .net. I know the .net multi-threading model. I know how to do code generation in .net. I know how to use raw sockets in .net. I know how to bend this massive framework to my will, and get all of the performance and power I want out of it. I have built reliable, predictable, massive scale applications in .net. Over my entire career I’ve invited product managers to give me their crazy ideas, and I have never had to push back.

Having said that, I also don't want to learn Ruby. I don't think it's mature enough to get my attention. I don't see how it is in any way better (that's not to say that it isn't, I just don't see it). Is it easier to learn? Maybe, but I've already crossed that hurdle; just like OP on reddit has. Is it a faster platform to blast out a simple website? Likely not for me. Is it a better platform for building and scaling massive applications? I doubt it.

Your language/framework defines the outer capabilities of your application, the performance of your application (read: scale), as well as what parts of your application can be reused from parts made available by others. They are things to be mastered. .Net takes a long time to master. The "jack of all trades master of none" attitude is what pains me. Show me that ruby is better for me in an area that .net is lacking and I'll learn it. Show me that it's better in all of the areas I care about and I'll master it. That will be a hard sell. .Net is a fantastic platform; well organized, discoverable, consistent in quality, exhaustive in scale, performant, and still growing.

Will .net last forever? I don't know. Older Microsoft technologies are still around and .net is still in active development. I don't see Microsoft giving up the massive investment they have made in .net any time soon. Whether or not Microsoft stays relevant in web programming is up to them, and up to those of us using it.

As to startups using .net, I've worked for two. One provided a product that allowed you to order print ads made for your franchise. It accepted photoshop PSD files from designers, took them apart and allowed the ordering party to swap layers and text to fit their business, all with a WYSIWYG live-previewing interface. I wrote the original system myself in 2004 and the company is still operating today. The second was an online ad distribution company. The system I helped build was capable of targeting, serving, and tracking over 500 million ads per second at peak (a major accomplishment in 2008). The company is still operating today. I was not told what the companies did until after the interviews and pay negotiation. There was no way to know before I accepted the jobs whether or not they were "cool" jobs. Before starting my own business I was invited to work on a high frequency trading system built in .net. I turned it down, but they are doing very well. I've worked more for large businesses and mega-corps who also wouldn't tell me the nature of the job they were hiring me for until I was hired. How do you know ahead of time if a .net job is cool when all you hear about it is “Senior .net developer needed”?

Is there a lack of marketing from MS extolling the values and virtues of .net on the server (especially for start-ups)? Yes. But that's always the case with Microsoft. They are terrible at marketing. They will always be terrible at marketing. Should you be using .net at your start-up? That’s up to you. I’m using it for mine.

computerslol··on Why you should use OpenGL and not DirectX
A Microsoft OS still runs on over 90% of the desktop market.
computerslol··on Why you should use OpenGL and not DirectX
I have one of each.
computerslol··on Windows 8 a certifiable flop
They need at least one killer "Modern" (windows 8 only) application.

I can't see anything modern apps can do that normal desktop apps can't. The interface is dramatically different, and that can be a plus if the right app came along that you WANTED to use your fingers to control over a keyboard and mouse.

Off the top of my head, I could imagine a hardware/software combination that automates your house. A wifi connected controller box would use the power lines in your house to transmit information (like x10 does) to cheap replacement switches and outlets; letting you control what does and doesn't get power. Maybe the outlets track how much electricity your household devices are using and you can get a pretty graph. Maybe they use a threshold to determine when a device is in standby mode and give you the option to automatically cut it's trickle power. Maybe an IR breakout box lets you control your entertainment center. Some sort of wifi streaming box lets you stream audio from one room to another. Maybe a few wifi enabled cheap cameras you can mount around let you monitor your rooms. All of these features would be controlled centrally through a windows 8 modern device. I could see something like this being a good use of the simple design of metro applications. Wasn't there a Microsoft home concept a long time ago? What happened to that?

I hope Redmond devotes more energy to developing killer apps in the near future. I think they could turn this around if they get normal consumers inspired.

computerslol··on Is learning C# as a first language a mistake?
The differences aren't so minor. I could write a list, but someone has already done that: http://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java
computerslol··on Is learning C# as a first language a mistake?
There is a lot of depth to C# that most of the .net developers I've met have never seen (and even when they've seen it, they do not fully understand).

The .net framework comes with tons of classes built-in that can be arranged to do most anything that you've seen elsewhere with very little work; so it's understandable that with so much done for you beginning and intermediate programmers might skip learning how to build components from scratch, how to optimize, and how to create complex algorithms that solve novel business needs; however understanding of these topics is expected of senior developers everywhere I have worked.

I can see the point in suggesting one doesn't start with c#. I can also see the need for books that give you a proper ground-up understanding of what's going on. C# 5 Unleashed is an excellent example.

I don't think learning C# immediately is a mistake, but I do think it gives you an easy excuse not to learn the fundamentals that should be very important to you. It's up to you as to whether or not you skip important bits and risk your career; but it will catch up to you someday.

computerslol··on HealthCare.gov’s head tech guy is out
He probably didn't leave by choice.

Jumping off what is perceived to be a sinking ship like that (by choice) before it was fixed would be career suicide. It is however very understandable that he would be found a job to get him out of the way for someone else to do damage control.

computerslol··on Why Meteor will kill Ruby on Rails
In November W3techs.com's survey of the top 1 million web servers based on alexa.com traffic numbers found 18.6% to be running on ASP.net.

There may be a few more ASP.net developers out there than you assumed.

http://w3techs.com/technologies/overview/programming_languag...

computerslol··on Why Meteor will kill Ruby on Rails
As someone that's been building high traffic applications on ASP.net for 11 years I generally stay out of threads like this. There is a ton of ill-informed (and more often than not blatantly false) asp.net bashing that goes on on this site. I see so much of it I generally just roll my eyes instead of hitting the reply button.

You can't use the silence of developers like me to prove a point when any pro asp.net content posted here is met with hostility.

ASP.net has an "easy mode". Easy mode is for small sites made quickly. If you're dragging and dropping, you're using easy mode. If you're only using the server controls provided, you're using easy mode. If you haven't extended or replaced any of the provided subsystems, you're using easy mode. I'd prefer developers from other platforms stop making comparisons between their platform and easy mode asp.net as if they knew what they were talking about.

ASP.net is a tuner's platform. It is completely modular, and anything you don't like can be replaced with something custom suited for your business/performance needs. This goes much deeper than custom server controls. You can look at the development of ASP.net MVC as an example.

If you want an easy framework to master, ASP.net is not the place for you. If you want something fast, scalable, strongly typed, customizable and built for large applications; you should have a look under the hood.

Those who haven't spent time getting intimately familiar with ASP.net's innards really have no place to comment.

computerslol··on Time for Gates to go, some top Microsoft investors tell board
Try writing some IL :).
computerslol··on Ask HN: what is a monad?
I'm excited you're starting a journey. Make sure to pack ibuprofen.
computerslol··on Ask HN: I'm 26 and would like to make 100k/yearly before I'm 30. How do I do it?
Firstly, you are in the wrong industry to make money; however being 29 and having made over 150% of your goal last year without living on the coasts I have a few tips that might help you.

Unfortunately, those that make money decisions see you as just a resource. You are a thing. You have a recurring cost, you produce products, and they don’t really care about the quality of your work unless it becomes a problem. What you are worth to them depends on the amount you are willing to take, your rarity, and what it would cost to replace you. To make more, you should learn to market yourself as a thing.

If you want to stay a front end guy, learn good design and develop your taste. Business people in general have a higher respect for designers than front end coders, as their work visibly and directly impacts the perceived quality of the end product. Being a designer also gets you more face-time with product managers, who’s opinions are generally taken seriously by the money people when deciding your value. Being able to come up with both designs and implementations for those designs will help you shorten the development cycle on projects that you are assigned to (as there are fewer required meetings, and you are not going to push-back on yourself).

In my experience the back-end plan is a better (but more difficult) one. It will open more doors for you in the long run, and is less vulnerable to shifts in the market. Your work will have more depth, and it’s an easier place to set yourself apart from your competition later in your career. It's very important that you focus on learning OO first, before taking a deep dive into the language itself.

You CAN get to “senior” level without having a real understanding with OO. Anyone that does know OO well (likely everyone in development management depending on the company) will be able to tell you are a hack when they look over your code, and will be less likely to promote (or trust) you. From a development management perspective it is common to separate the developers who work for you into two separate camps: cattle (who build what they’re told), and problem solvers (who solve problems). At all cost, you want to be in the latter camp. If you find yourself in the cattle camp, it is easier to swap jobs than change that perception.

http://adriancheok.info/post/26835527269/secret-for-innovati...

If you choose c#, the framework is massive. This is daunting at first, but you will learn to love it. It is very discoverable (you can learn quickly by poking around). Whichever language you choose, find some heroes in your company, and talk to them often. Offer your free time to help them with their projects. Ask them to mentor you. Read their code. Ask them to be rough on you in code reviews. Never talk back to them, and listen to what they say; however remember that they are just people like you, and your goal is to get better, not to become them. These relationships will be important later in your career, as these people will help you get jobs later if you are good to them.

The language choice depends on what sort of company you want to work for. C# is not often used in startups, and ruby (as far as I know) is rarely used in large corporations. There are exceptions to both, but the exceptions are not what you want to bank your career on.

Whatever path you choose, this industry is difficult if you plan to be a world class player (where the money is). You should move into something you enjoy instead of making a decision based on earnings potential.

computerslol··on Why can’t Microsoft get their products right on the first try?
Microsoft owns about 90% of the desktop market, 30%+ of the server market and 25%+ of active gaming consoles. Right now.
computerslol··on Why can’t Microsoft get their products right on the first try?
It's hard to know what will work before real consumers have had it in their hands for a while. Perceptions change with propinquity.

Microsoft is one of the few companies that literally define modern consumer computing. It makes me very happy every time I see them moving forward. Sometimes it works, sometimes it doesn't. When it doesn't, they grow and fix it.

Apple has the same cycle, but it's less immediately apparent.

computerslol··on Adobe abandons its Creative Suite to focus on Creative Cloud
I enjoy owning my tools.

I am pretty annoyed that this option is going away. I guess it's more of a perception thing than anything.

computerslol··on On Being A Designer And A Developer: Not Quite Unicorn Rare
A great developer needs to be able to foresee the impact his/her work will have on the choreography, performance, and resources of computer systems.

A great designer needs to be able to foresee the impact his/her work will have on the lives, perceptions, and interactions of real people.

There are enough easy third party tools to allow anyone with the willpower to be passable at both.

Examples of masterworks of design and development created by one person are rare.

computerslol··on Google Glass
Part of me really wants one. The other part of me is concerned.

The concerned part is my developer self. I am having a hard time not seeing this as extremely limiting from an interaction perspective. All I am seeing is GPS and text input (from speech). I'd imagine there will be an accelerometer, but I couldn't imagine asking users to jerk their heads around to point at something. If it came with a glove that tracked a hand or something, I'd be less nervous.

If this takes off, everyone will get one. It looks like the future. Many people already feel they can replace their computers with smartphones, what if they replace their smartphones with this? If I was an average american and didn't know better, I'd let me 5 year old computer continue to age, chuck my cell phone, and blow my technology budget for the year to get one of these instead... It's a device that as far as I can see has no decent ability to capture pointing.

How do you scroll in it without looking like an idiot that talks to yourself in public?

computerslol··on Technical founders have nothing to lose
I have a deliverable due today; will someone elaborate on the following?

Career Trajectory. Job 1: 5,000 users. Job 2: 10,000 users. Job 3: 500,000 users. Job 4: 1,000,000 users. Job 5: 10,000,000 users. How many users does the startup have, how will that destroy my resume, and how long will it take me to recover my career if the startup fails?

Opportunity Cost vs. Peak Production Years Remaining. I am 20 something years old. I only have so many years of peak production remaining before it's time to have a family and a house and all that. Is a startup the best way to spend those years when I am worth $x per hour on the market?

computerslol··on Want to learn to code? Don't copy and paste, type out other people's code
I wholeheartedly agree. I spent my first few years doing this, and it helped expand my framework vocabulary faster than my co-workers at the same level.
computerslol··on Ask HN: How many hours do hackers sleep?
9. Any less has a negative productivity impact.
computerslol··on Is my computer haunted?
Before you wipe the machine, you should give them something interesting to look at on the other end of your spyware.
computerslol··on Microsoft Is Disappearing Before Our Very Eyes
The scene: a board room, the meeting is about to start.

Steve: Hey Jim, what's that?

Jim: This is a surface tablet.

Steve: Where's your laptop? We need to go over and edit our serious business documents, which we use for serious business. Tablets are toys. We don't want you playing angry birds in our serious business meeting!

Jim: I don't need it. This thing runs full Microsoft office.

Steve: Whaaaaaaaa...

I think everything will be fine. I see mine as less of a consumer tablet and more of a business one. I am looking forward to the full release of office 2013 (it comes with the preview release).

I hope eventually I will be able to compile small custom .net apps for it without going through the store.

computerslol··on CodeWars: the Hacker Society where devs compete
Throwing a 500 :\
computerslol··on Detail of Intel Phi 50+core processor released
/salivate

Any idea what it will cost when released? Rounded to the nearest grand?

computerslol··on Programming is Frustrating – This is Why There is a Shortage of Programmers
"Programming Isn’t Hard, It’s Just Frustrating – This is Why There is a Shortage of Programmers"

I'm not sure your cargo-cult experiences with PHP qualify this blanket statement about the entire industry :|.

computerslol··on The amount of crap Windows users have to put up with is incredible
Here's the interesting question.

Is it better to lock down user experience using a central software quality assurance and distribution system (allowing an OS developer to enforce rules to keep experiences powered by their OS consistent and easy, but massively hampering homebrew), or allow developers (and by extension marketing people) add whatever they want to software (leaving the market open for innovation, and by necessity, this crap as well)?

Windows 8 represents both experiences, side by side. User adoption will give us the answer.

Personally, I am happy to be part of the experiment.

← PreviousPage 3 of 5Next →