TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The self-hating web developer

379 pointsby dumindunuwanalmost 10 years ago

53 comments

patio11almost 10 years ago
There are few things in life more important than choosing one&#x27;s peer group well. The Internet gives you many more options than we had available prior to the existence of it. Choose wisely and re-evaluate that choice periodically to see whether your peer group continues to represent your goals and values.<p>Why? Your peer group literally gets arbitrary code execution on your brain. (It&#x27;s a flaw in MonkeyBrainOS 1.01 which we haven&#x27;t patched yet.) You&#x27;ll tend to find yourself valuing what they value. You will tend to find yourself achieving outcomes strikingly similar to their outcomes.<p>Given this, picking a peer group whose values are not your values and whose outcomes are terrible is a poor choice.<p>There is some cognizable peer group of &quot;the most misanthropic 10% of commenters on Internet threads about programming languages.&quot; The majority are not professional programmers. Most are not very happy people. You can generally tell a lot about what a person values by what they spend their time doing; someone who professes to value the great intellectual challenge that is Real Programming but actually ships comments which make other people feel bad probably, to a first approximation, values making other people feel bad.<p>If you do not also want to grow into a values system where making other people feel bad is the highlight of your day, consider choosing a better peer group, where e.g. feeding one&#x27;s family through honest labor is valued and having very loud opinions about NodeJS not so much.
评论 #9911850 未加载
评论 #9910583 未加载
评论 #9911023 未加载
评论 #9912031 未加载
评论 #9911431 未加载
评论 #9910667 未加载
评论 #9910617 未加载
austenallredalmost 10 years ago
The &quot;language hate&quot; in programming is truly cancerous.<p>I know several people who started programming only to get twisted and turned around by experienced developers saying, &quot;Don&#x27;t learn PHP&quot; then &quot;Rails is a joke and doesn&#x27;t scale well.&quot; I talk to them a week later, and they&#x27;re trying to build a simple web app in functional Haskell, and their environment is all messed up because they are using a zsh configuration they don&#x27;t understand and github is telling them to put stuff in their .bashrc.<p><i>Especially</i> when you&#x27;re getting started, it just doesn&#x27;t matter. Open up a text editor - it doesn&#x27;t matter if it&#x27;s vim or emacs or notepad, and start building something - it doesn&#x27;t matter if it&#x27;s PHP or Node.JS or Rails or LISP. Just <i>do stuff</i>. Then take on the next challenge, and grow from there. You don&#x27;t start out hacking the Linux kernel.<p><i>Momentum is the thing that truly matters.</i> Learning and creating is like a conveyor belt - if you stop the conveyor belt to move the things around and make sure that you&#x27;re doing everything right, progress stops, and you&#x27;re probably going to do more harm than good. Keep the conveyor belt running at all costs.<p>Discouraging that momentum because the language isn&#x27;t &quot;good enough&quot; is like telling someone who is learning to ride a bike that they should jump on a motorcycle. No one would question that motorcycles are better than bicycles, but you probably don&#x27;t want to start on one.<p>My general rule of thumb is that if you don&#x27;t know <i>why</i> something is better yet, you should generally avoid using it. If you don&#x27;t know how to write CSS, you don&#x27;t need LESS or SASS or Gulp or Bower or whatever. Once you write a project in CSS, the need for SASS becomes obvious, and you appreciate it.<p>Of the several programmers I know, I don&#x27;t know any who started out writing machine code. Most started out writing PHP (some Java), but they got the ball rolling and learned quickly.
评论 #9910369 未加载
评论 #9910561 未加载
评论 #9910559 未加载
评论 #9910637 未加载
评论 #9910648 未加载
评论 #9911508 未加载
评论 #9910924 未加载
评论 #9910444 未加载
评论 #9910528 未加载
skrebbelalmost 10 years ago
For all of those who, like the OP, believe web dev isn&#x27;t real programming:<p><pre><code> - it is - uploading WordPress isn&#x27;t web development </code></pre> I worked in embedded systems for a few years, and let me tell you, the quality of people is exactly the same as in web dev. They do pointer arithmetic all the time (way too much), we pass functions to functions all the time (way too much). They use ancient compilers and tools, we invent a new frontend build pipeline every week. They build systems that are so badly structured that they take a night to compile if you change one line. We willingly make WordPress plugins. And the list goes on.<p>I walked away there because I strongly prefer learning a new frontend build pipeline every week over using ancient compilers on piles of legacy code. In many ways, web dev is where the edge cuts. But neither is better or worse, and there&#x27;s fools and geniuses everywhere.
评论 #9910517 未加载
评论 #9911172 未加载
评论 #9911457 未加载
评论 #9910920 未加载
pmichaudalmost 10 years ago
Yeah, modern web development is actually really fucking hard mainly because you have to know so many different things. To build an application from scratch, and do it well, you have to have deep knowledge of, let&#x27;s see...<p>* At least one server side language<p>* Probably a server side framework<p>* HTML<p>* CSS<p>* Maybe a preprocessor language like SASS or CoffeeScript<p>* SQL<p>* HTTP<p>* Probably a SCM like Git<p>* At least one server, which means the server software itself, like Apache or Nginx, the server for your language like phusion passenger, probably an OS that you&#x27;re not familiar with<p>* a whole slew of build tools and the like relevant to whatever ecosystem you&#x27;re in<p>And more shit I&#x27;m not thinking about (oh, all about images types and compression). And that&#x27;s just basic stuff, not even considering setting up a database server or, heaven forbid, a cluster. Or anythging like redis, or a queuing system or redundant hardware.<p>That&#x27;s not nearly a comprehensive list, but I think my point is made.<p>It&#x27;s true that generally web dev is less mathy. I personally scratch that itch with graphics and game programming, but web dev is a hairy beast, so don&#x27;t let anyone get you down about it.
评论 #9910421 未加载
评论 #9911058 未加载
评论 #9911400 未加载
评论 #9910886 未加载
评论 #9914836 未加载
Xophmeisteralmost 10 years ago
Like many here, I don&#x27;t believe in the OP&#x27;s premise that web development isn&#x27;t real programming, but likewise, I really hate it too! When I have to do it, I much prefer getting involved with the backend-side of things; I loathe frontend development. My main reasons being:<p>1. The framework churn at this point is beyond ridiculous. In my last&#x2F;current project, I just gave up and wrote everything by hand with a bit of jQuery for DOM manipulation. It may not be pretty, it may not scale, but it actually works, it took me maybe a day-and-a-half (rather than the weeks of time I&#x27;ve lost experimenting with Framework X) and it will be tractable when I (or some other developer) comes back to it in the future.<p>2. Ultimately, by in large, web development is just making CRUD applications. Having to go through all that pain and not having much to show for it at the end (in terms of novelty) is kind of soul destroying! When one writes, say, a command line tool, that&#x27;s ultimately more about manipulation. In my mind, doing creative things with data is much more interesting than simply providing a means to store it.
评论 #9910772 未加载
sombremesaalmost 10 years ago
Web development is real software development. The people who say or think otherwise usually just don&#x27;t know any better.<p>That being said, there are different tiers of software development (including web development) in general. Most developers are actually abysmal at architecting good software. This might be down to a number of things - time pressure, lack of experience, lack of skill, apathy, &quot;life happens&quot; etc.<p>Anyway my point is, abysmal software is everywhere. Thankfully, customers don&#x27;t mind. If your software is important, you&#x27;ll write tests.
评论 #9910551 未加载
评论 #9910379 未加载
kissthebladealmost 10 years ago
Most often the technology isn&#x27;t the most important thing in &quot;web development&quot;. Understanding the customers needs (often better than the customer) and implementing them is the point.<p>Of course technology is important but just using sane (and proven) technologies that all on the team understand is often the best way forward. Wery seldom the problem with custom business apps is the technology or &quot;webscale&quot; issues etc which get all the attention on eg. HN. When creating apps which will be usen for maybe 10+ years using the most hip language or framework isn&#x27;t so smart when considering maintainability. Eg. Java&#x2F;PHP&#x2F;mysql are all etremely well understood and work wery well.<p>I&#x27;ve been doing this kind of development for about 15 years and not once has an application eg. needed to be clustered in any way for performance reasons (for HA reasons maybe).
Arun2009almost 10 years ago
There are a couple of problems that I see with the entire premise behind this article.<p>1. Web development can be challenging. Writing a simple blog or wiki system in PHP might be &quot;easy&quot;, but creating a wordpress.com or wikipedia.org is a whole different ballgame. Latency, scalability, architecture, high availability, manageability, security - the challenges are endless.<p>2. I don&#x27;t understand why software developers tend to value the &quot;difficulty&quot; of the technology used in a product over the utility of the final product to end customers. Creating a web app in PHP for sharing daily tidbits in your friends&#x27; lives may not be as challenging as writing a compiler for a functional language like Haskell, but its end value may far eclipse that of the latter. Facebook and Twitter after all started as fairly simple applications but are multi-billion dollar companies now. I would even say that there is a certain unix-like elegance in using the easiest, simplest technologies to create the maximum returns in terms of utility to humans. And that, IMO, is <i>far</i> from being a &quot;brain-dead&quot; skill.
评论 #9911067 未加载
therealmarvalmost 10 years ago
I worked several years in my early programming career in a big software company who developed mission critical software: traffic control software. You think they are bad ass programmers? You are totally wrong... the system (btw it was often Java or C based) we programmed on was so complicated that you need at least half of year day to day experience to know what you are doing there. And most frustrating part: There was no inner beauty in this beast! At the end you see a lot of ancient stupid code with the same stupid and dangerous ducktape as everywhere else. And the programmers there are no bad ass elite programmers... I would even say that many of them are below average young programmers because they worked several decades in their highly specialized area and have no clue about other technology (they will never be e.g. web developers). The most significant difference is that the whole building process: First there is a lot and a lot of specification (this sucks so much), then they adapt one ancient industrial system to this specification (this sucks maybe even more) and to get this thing ready for mission critical usage they do more than everywhere else Quality Assurance: Test, evaluation, verification, test, evaluation, test, evaluation, test, test, test... this sucks too. So after maybe 3-4 years they are ready and ship... and guess what... it is tested again. I&#x27;m happy I left this area... they are also very strict with software you could use, so the innovation process is F<i></i>* slow there.<p>My advice: Change your inner attitude and thinking about programming. And the most important part: Do not care about what people think... only care about yourself. I&#x27;ve seen so many programmers (and I hate this attitude) who think they are so much more bad ass because they program in this and this language or area... so what? And why? I don&#x27;t care and I do not need to compare myself with them.
评论 #9910589 未加载
signaleralmost 10 years ago
A web developer wears many different hats. These days you have to be a real polymath to make really beautiful and functional websites. I never enjoyed the limiting belief that web development is some symphony of JS+HTML+CSS in the browser. It&#x27;s more than that, and it is multi disciplined. Elements of WebPerf, Browser Engine quirks, progressive enhancement, A11Y, Design, UX, build scripts, templates, design patterns, server backend, frontend, bothend, mobile&#x2F;handheld, analytics, rendering engines, etc<p>The list could go on for some length.<p>Not to mention the various principles borrowed from &#x27;real&#x27; software engineering canon, like D.R.Y, K.I.S.S, etc.<p>In terms of proficiency and confidence, you should look up the Dunning–Kruger effect<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Dunning%E2%80%93Kruger_effect" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Dunning%E2%80%93Kruger_effect</a><p>And its ugly cousin:<p><a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Impostor_syndrome" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Impostor_syndrome</a>
enobrevalmost 10 years ago
I&#x27;ve always been a fan of collecting money for solving problems and letting others worry about whether what I&#x27;m doing qualifies as &quot;real&quot; programming. Knowing how to listen to potential clients has gotten me a lot further than worrying whether PHP is a real programming language.
Udoalmost 10 years ago
The motivation behind developers dissing each other for their chosen field of work and their tools is absolutely puzzling, and it does real harm. Nobody would assert that <i>printf(&quot;hello world!&quot;);</i> epitomizes systems programming, yet <i>print($foo);</i> is apparently considered synonymous with web development and lowest of the unspeakable arts.<p>Inept programming can be found all over the place. A newbie program doesn&#x27;t magically get better because it&#x27;s a kernel module written in C, anymore than it gets magically worse because it&#x27;s a guestbook script written in PHP. The astonishing thing is this goes arbitrarily deep in the tech taxonomy tree: Ruby on Rails is considered a pro-grade environment, even though it&#x27;s partially focused on mitigating newbie mistakes. PHP is considered a beginner-grade toy, despite the comparatively vast expertise one needs to write correct code in it. The web is a stupendously complex thing to write software for, there is nothing low or trivial about it.<p>When I was relatively young in the late nineties, my contact to other programmers was extremely limited. I was working at an ad agency, where I developed and maintained an in-house DSL for web programming. When the second full-time developer was hired, their first move was to diss pretty much everything I had made. &quot;<i>How can you write a web framework without regex?</i>&quot; &quot;<i>A document-based database? Abomination!</i>&quot; &quot;<i>A stateless server? That&#x27;s crazy, why didn&#x27;t you write a persistent app server?</i>&quot; &quot;<i>A real programmer uses Emacs</i>&quot;<p>Over the years, this mode of interaction still exists. Most people avoid it by hanging out only with developers who use the exact same stack they do, and when the winds shift they all switch together and pretend the old tech never existed. We had the chance, as a programmer subculture, to leave this ridiculous and arbitrary in-group&#x2F;out-group stuff behind, but instead we embraced it and turned it up to eleven.
评论 #9912743 未加载
dackalmost 10 years ago
I&#x27;ve definitely had these feelings too - sometimes still do (the feeling of struggling with a problem i assumed should be easy). I also tend to naturally spread out my knowledge a little too thin on various projects and not really make meaningful progress on any of them.<p>Two things have helped for me - one is to have a useful project in mind for the thing you are learning, so you have a payoff at the end. The other is digging into the details of the thing to really understand the subject - and make a mental note that you&#x27;re implicitly committing to struggle and frustration in exchange for the reward of knowledge. If you aren&#x27;t willing to struggle you won&#x27;t get very far in any subject. It&#x27;s great to have the initial interest&#x2F;spark, but perseverance is what really changes you as a programmer.
评论 #9910601 未加载
评论 #9910949 未加载
allan_salmost 10 years ago
Also one of the question the OP has not answered, and that I&#x27;ve seen a lot of people asking themselves is<p>How one does leave web development.<p>I&#x27;m graduated from an engineering school, were most of my classmates were doing smallwebsites&#x2F;wordpress plugins etc. on their freetime for the easy money (as anyway it&#x27;s very rare, if not impossible, to find a freelance job as a student on embedded system)<p>To the point that when they&#x27;re graduated, as they&#x27;ve accumulated experience in web development, they find a job in it. And later they get defined as a &quot;php developer&quot; , though we did learn about data structures etc.<p>Then HR will discard your resume when you apply for a embed system or other non-php related job, because you got nothing marked with it on your past experiences (even if you had worked on some arduino on your freetime).<p>So how one does the conversion ?<p><pre><code> * create&#x2F;participate to open source projects in the field you&#x27;re interested ? * try hard to find a job that involve both, so that internally you can try to make the transition ? * remove the PHP experiences from your CV so that you&#x27;re just a &quot;junior&quot;?</code></pre>
评论 #9911779 未加载
pascaloalmost 10 years ago
I have been in the business for 15 years now.I started as the guy that did the table-and-frameset static websites, and if I look back now there&#x27;s a myriad of things that I had to learn and 75% of that I have probably forgotten again. The myriad of protocols, languages, frameworks, toolkits that you have to keep up to date with. Fashions in what the devs think is cool and what the customers ask for.<p>The most amazing thing to me however is what the browser and web technology now allow you to do. The way I see it, browsers are not document viewers anymore, they are akin to operating systems, and the web dev skills you have let you make awesome stuff you&#x27;d never dream of 10 years ago.<p>I have been tinkering with packaged chrome apps and UPNP, and in my mind it&#x27;s nuts that I can do this, me, the humble web developer.<p>So to echo one of the sibling posts here: Just go and build something. Doesn&#x27;t matter what. In the end what matters is whether people use your software or not. If you blogged and it made a difference, don&#x27;t let anybody rubbish that for you. You&#x27;re already a cut above the rest.
Animatsalmost 10 years ago
That&#x27;s sad.<p>Web development is hard for all the wrong reasons. There are so many layers of bad, half-broken stuff to deal with, encapsulated in new, half-broken stuff. Worse, it has fads. Sign: &quot;It has been [0] days since the last new Javascript framework.&quot; Web developers must run very hard to stay in the same place.<p>It&#x27;s hard to get excited about this, when in the end, the result is usually a web page which could have been displayed faster in HTML 3.2.
评论 #9910292 未加载
评论 #9910544 未加载
yomritoyjalmost 10 years ago
In intellectual pursuits like programming, it is easy to fall into the trap of thinking that only intellectually hard things are worthwhile. Which in turn leads us to think of an intellectual ladder with mathematics at the top. This causes us to disregard the creativity and effort required to produce useful things (such as websites) even when no intellectually hard problems need to be solved. I think this is a toxic frame of mind for anyone who is not a mathematician.
评论 #9910956 未加载
ctvoalmost 10 years ago
I&#x27;m constantly impressed by people who have true, in-depth knowledge of any space.<p>If you&#x27;re world class at HTML &#x2F; CSS, know the specs intimately, know the differences and quirks in rendering engines and can explain why IE8 renders a selector differently -- that&#x27;s impressive. That&#x27;s also very valuable.<p>That wouldn&#x27;t be considered real programming by a lot of folks. Who cares.<p>I&#x27;ve found that going broad is fun, going deep is hard. If you find yourself seeking challenges, there&#x27;s often little need to branch out. If you dig deeper, you&#x27;ll run into highly technical, hard problems really quickly. You also gain expertise few people have.
dempseyealmost 10 years ago
If it&#x27;s any consolation, &quot;real programming&quot; doesn&#x27;t have any prestige either.
keithpeteralmost 10 years ago
Disclaimer: I&#x27;m a civilian<p>If you generate value for an organisation by making a Web site work for them then I think you are a programmer!<p>By the same token, if someone could lose business&#x2F;data as a consequence of a serious software error on a system you have implemented, then you are <i>certainly</i> a programmer and you have a lot of responsibility.
phantom_oraclealmost 10 years ago
To the person who authored this piece of text that will apply in X-odd decades from now, I hope you inspire every coder in 2035 who is &quot;starting out programming&quot; to say:<p><i>Fuck your functional, static, super-fast, super-optimum, super-niche, super-scalable, super-everything language that only 64 other people in the world are using, that barely has any auth wrappers because your bus-factor of 2 prevents you from doing anything else except optimizing your compiler to be &quot;almost as fast as C&quot;. I will learn my shit-hole language that the dickwards at GooFaceZon and the asswires at redundant CS colleges refer to as &quot;a mistake of a programming language&quot; because frankly ...<p>My shit-hole language will do many important things, among others:<p>- Make me productive<p>- Pay my fucking bills<p>- Allow me to learn, because I understand shit at this level, was not born a savant and don&#x27;t dream in code (whatever the fuck that is)<p>- Allow me to live beyond the screen, because having a family, going outside and letting the sun touch your skin sometimes is good<p>So fuck it all, and fuck it all true and well. If COBOL and VB6 aren&#x27;t dead, long live WordPress!</i>
kayoonealmost 10 years ago
Imo web development in the open source field is a lot more complex than say developing in a strictly Java or .NET environment. Let&#x27;s face it, most .NET or Java programmers are building some kind of CRUD app too. Over 10 years ago i have started with PHP and Perl, going from horrible spaghetti code to full fledged Symfon2 apps that use abstraction layer upon abstraction layer. I have written NodeJS servers that analyze event streams of hundreds of servers and push realtime statistics to AngularJS frontend apps. These days i am building apps in React and am exited for the prospect of React Native. I have also worked in C# and Unity3D for game programming and built realtime multiplayer 3D action games. At heart, i consider myself a programmer who uses the right tool for the job and i work primarily on the web. I am still proud of it because it&#x27;s one of the most vibrant fields of tech to be in and companies pay good money for my work. Even though i did lots of PHP in my life, i never ever touched the code of Wordpress or Joomla or similar though.
hyperpalliumalmost 10 years ago
I&#x27;ve been affected by this recently. I used to focus on the outcome, on real problems solved; on value created, to help people - not impress them. An outcome&#x2F;engineering approach focusing on ends, not means (maintainability etc is a result, though logically secondary to the thing itself).<p>Helping people is <i>way</i> more satisfying than impressing them.<p>For example, youtube and facebook have helped many people, even though they use PHP. And PHP has helped a lot of people, by being simple and effective (I&#x27;ve always thought templates are a simple but brilliant idea).<p>As a learning method, it&#x27;s not about getting a comprehensive, deep understanding, but actually doing something useful, and just learning what you need for that. You get satisfaction along the way, and the pieces come together, giving you a lead for comprehensive understanding - if needed.<p>[ PS Personally I got turned off webdev years ago by tedious browser-compatibility - though I understand that&#x27;s long been solved by platforms like jquery etc. Also, it needs more visual design aptitude than I have... ]
Gibbon1almost 10 years ago
I just have a small comment about the difference between professionals that went into the profession via the front door, college, certs, etc. And those the went into though the back door, learned on their own because someone somehow decided to pay them. Generally the latter are people that get some satisfaction out of the trade. But there a lot of professionals that went to school to become X and found they hated it once they got out. Yet they owe all this money, and they can&#x27;t see any other way to earn the money they are used to. These people are usually very unhappy people.<p>The others that are generally happy with what they do, and aren&#x27;t the type of people that like playing power and status games with what they see as the lesser races of programmer.<p>To the point, if you find a career you like, that&#x27;s like hitting a home run in life. Letting unhappy people convince you to give that up is really terrible.
OliverJonesalmost 10 years ago
This author wrote, &quot;PHP was a terrible language, and PHP developers were terrible programmers. JavaScript was a terrible language, and JS developers couldn&#x27;t perform asymptotic analysis to save their life. Web developers don&#x27;t have degrees and it shows in their code. Drupal&#x2F;Wordpress developers are an absolute joke.&quot;<p>What a crock! What a good reason to stay away from online forums like reddit! The userface of any software, done well, is painstaking and valuable work. It&#x27;s a poor craftsman who blames his own tools. It&#x27;s a freakin&#x27; troll who blames other peoples&#x27; tools.<p>This has been going on since the beginning of the computer industry. Real mean program in machine language: assemblers are for wimps. COBOL? feh.<p>This is nonsense. By this reasoning, Michaelangelo was incompetent because of his choice of painting materials.<p>I hope Joel&#x27;s article will be seen by lots of people, and that our trade can mature.
vdaniukalmost 10 years ago
There is a simple path to the professional satisfaction for programmers who work primarily with web development. Learn a little marketing, a little entrepreneurship and make your own side projects. For fun, profit or social good. None of the arrogance or denigration won&#x27;t touch you then.
nicholas73almost 10 years ago
Funny, coming from an electronics background, I can understand the stack down to the metal. But from my point of view, the further away from the metal you are, the further you are away from monkey work.<p>The author could not have flipped things more on its head to me. It&#x27;s ALL monkey work, in that it&#x27;s a lot of tedious glue work and calculations. Except the higher level you are, the easier it is to be executing your vision, rather than meeting some spec.<p>You are a lot more likely to come up with a webapp business idea, than you are going to have the opportunity to design the next CPU or what not.<p>Business matters aside, I also find coding challenges to be more like puzzles, whereas circuits to be like a stack of math problems. If you don&#x27;t like being a code monkey try being a (used) human calculator!<p>Grass is greener, I suppose.
afarrellalmost 10 years ago
It is easy to write shitty code as a web developer and get something to work, however unmaintainably and unprofessionally. That doesn&#x27;t make it any easier to write excellent, clean, and extensible code. In fact, it makes it harder because you&#x27;re more likely to find yourself in an organization which has been able to survive without being able to write clean and professional code.<p>Branching out into other domains can give you insights if you find them interesting, but if you do in fact care about web development, focus on taking pride in what you build as a web developer.
gitaarikalmost 10 years ago
It&#x27;s sad some people tend to think as being a programmer is all about programming. You have to focus on the goal: the product that you are creating. Then you decide what&#x27;s the best tool to make this product, and it doesn&#x27;t matter what field that belongs to. If it helps you make the product you want to make, then it&#x27;s good.<p>Of course you might get bored creating a certain product at some point because it&#x27;s become too easy for you. But as long as you don&#x27;t reach that point, don&#x27;t rush yourself. I would say.
Roboprogalmost 10 years ago
In the end, language choice is up to your employer for most jobs. Don&#x27;t sweat it.<p>Back in the 80s when I was in uni, the only job I could get in the area was in a language called dBASE (later Clipper). Nothing like the &quot;real&quot; languages we learned in school. BUT, we got stuff done, quickly, to allow entry and reporting against the data kept on the &quot;real computers&quot;. A few years later, after graduation, at that job, I got to see a &quot;C&quot; program somebody wrote to tie into one of the systems I did to speed up a batch process, as I needed to fix a few things in it. It was a real enlightenment to see how bad the code was (in some ways). I didn&#x27;t feel so bad about what I did after being able to fix this &quot;expert&quot; code.<p>Don&#x27;t let the bastards get you down, as they say.<p>PS - I&#x27;ve been a Java programmer for the last decade, but I&#x27;m doing Angular on an overhaul project at my latest job. I like Javascript (feels like the rich, &quot;local&quot;, UI stuff I did in the 80s, all over again), but CSS <i>is</i> hard. Don&#x27;t feel bad about &quot;only&quot; knowing web page stuff.<p>and ... many other posters already mentioned the primary importance of simply earning a living, honestly.
wmtalmost 10 years ago
Damn. The thing is, web programming is real programming. I work with low level system security components, and before that worked on medical software, i.e. what the author considers &quot;real programming&quot;. However, during the IE 6.0 era I also did multiple corporate internal web UIs with PHP, ASP and JS, and projects on those platforms can be just as demanding as high performance low level C projects.
roflmyeggoalmost 10 years ago
Seems a little bit rash to differentiate web development from &quot;real programming&quot; with such a binary lens.<p>There are both good and bad web developers, just as there are software engineers.<p>If one wants to learn more about software engineering then of course there is nothing wrong with that, however it strikes me as odd to pursue it solely for the &quot;higher prestige&quot; that it carries amongst the programming forums.
niixalmost 10 years ago
I can relate a bit to this article. Although, I never find myself &quot;hating&quot; what I do per se, but I definitely find myself looking for something more &quot;difficult&quot;. I&#x27;ve done the same as the OP, bought C books, read a few pages, wrote some example apps, etc. But I quickly lose interest.<p>I work as a &quot;software engineer&quot; by day, which is basically a glorified title for a guy who writes a ton of JavaScript. But I like to put a positive spin as to why this profession is so easy: <i>Maybe it&#x27;s easy because I&#x27;ve been doing it for so long. Maybe it&#x27;s easy because I really know what I&#x27;m doing.</i><p>I find it important to always challenge yourself and continue learning. Honestly the JavaScript community is great for that, hell every couple of days there is some new framework to learn.<p>Overall, it is sad how down the OP is on his self, I hope he can find his way again. Programming is one of the most enjoyable experiences I have ever had, and I wish everyone could see that same enjoyment.
jqmalmost 10 years ago
I like web development but have to admit I do look down a little on people who are able only to click some buttons and get WordPress running and then people consider them &quot;programmers&quot;.<p>Likewise, people who are able to drag some stuff around in MS Access and are considered &quot;programers&quot;.<p>It&#x27;s not necessarily the amount of skill and effort involved (although admittedly that is part of it), it&#x27;s the fact that, in my experience, soon enough these &quot;click and drag&quot; type systems usually break. When they do, the button clickers often don&#x27;t have the skills to fix them. This is, in my opinion, the refining fire that separates &quot;programmers&quot; from &quot;Next&quot; clicking hacks. And often it would have been, in total, more efficient just to learn a bit of real programming in the first place rather than to fix the messes created by &quot;easy&quot; systems. I&#x27;m not complaining because I&#x27;ve made money fixing problems button clicking &quot;programmers&quot; created but couldn&#x27;t fix. In MS Access, in WordPress, in Sharepoint, in Lotus Approach, etc.<p>It&#x27;s better to take the time to learn how to code. PHP isn&#x27;t my preference, there are better languages, but it&#x27;s probably OK. Oh, and I don&#x27;t worry about what people think of web developers. Their opinion doesn&#x27;t really matter. But button clickers as opposed to coders... there is a real difference and it shows up soon enough.<p>Last point, OP messed up by ordering a bunch of books. He should have ordered just one. Don&#x27;t try to drink from a fire hose. You will get knocked on your ass and all wet, and you won&#x27;t even get your drink. Also, besides learning, you have to keep producing. Even if it&#x27;s boring and some people don&#x27;t respect you. A certain level of income take precedence to learning. If you don&#x27;t have it then the learning is done because you can&#x27;t fund it. So... priorities.
seigealmost 10 years ago
I wish you nothing but the best in your journey back to confidence. I have been there too and occasionally my mind gets tripped in the same thoughts again, but I realized that web dev is the only thing that I know that let me builds what I want to build. It might be easy for some but it is effective for me.
tracker1almost 10 years ago
I don&#x27;t know that I agree with the article&#x27;s premise... while I feel for the author, and even the referenced poster in reddit... I have to say that I love web development. I started out very early on in the Web, I wanted to create interfaces and applications that people used. I&#x27;d spent time on BBSes before&#x2F;since, and just want to create a usable system.<p>I started out with design work. I learned JS because I wanted to accomplish a given task... I read a big book (JavaScript Bible, 1st edition iirc), over a weekend, and applied that when I got back to work monday... over time, I became more interested in the backend... SQL, livescript, (now classic) ASP, VB5&#x2F;6&#x2F;COM&#x2F;DCOM, and then C# when it came out.<p>The .com bust, while painful was actually a great learning experience for me. I knew C# was the next step out from VBScript&#x2F;ASP, but I was unemployed... I managed to get the cheapest&#x2F;complete book on C#, and without VS was stuck using the command line interfaces. It was a really interesting, and challenging experience. By the time I finally got to use VS2003, I really didn&#x27;t care for it, but VS2005 was decent.<p>Since then I&#x27;ve dabbled in C&#x2F;C++, F#, Perl, Python, Ruby and a few others... I&#x27;ve had Go on my radar for a while, but haven&#x27;t had a use case for actually trying it yet. I&#x27;ve also spent the past 4-5 years advocating for NodeJS usage. I find the development paradigm it offers, and the constructs you can acheive (more functional composition, less classes) are closer to my mindset.<p>In the end I like knowing how different softwares work together, how the data is stored... to some extent, I don&#x27;t really want to know the details down to memory access and drivers. At this point in my life, I have an understanding conceptually, but practically I don&#x27;t care so much. I now know enough to not even hit certain bottlenecks, while not prematurely optimizing for others.<p>It&#x27;s something that simply comes from experience and understanding that you can&#x27;t know everything, and just trying to continue to learn and try new things. I get imposter syndrom like anyone else, but I understand that it&#x27;s all part of the process.
dandrewsalmost 10 years ago
In re: the vast number of available programming languages... not really a new problem. I&#x27;ve always been amused by the &quot;Tower of Babel&quot; illustration on the cover of Jean Sammet&#x27;s 1969 book, <i>Programming Languages: History and Fundamentals</i>.<p><a href="http:&#x2F;&#x2F;ecx.images-amazon.com&#x2F;images&#x2F;I&#x2F;51jYiKlauWL._SX330_BO1,204,203,200_.jpg" rel="nofollow">http:&#x2F;&#x2F;ecx.images-amazon.com&#x2F;images&#x2F;I&#x2F;51jYiKlauWL._SX330_BO1...</a>
amirouchealmost 10 years ago
«Low level is easy» <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=7538150" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=7538150</a>
_navaneethanalmost 10 years ago
I am a Python&#x2F;Django developer. I love my learning and work in Django web development.<p>Aren&#x27;t you injecting me a negative thoughts?<p>From web development, try to go for scaling multiple architecture machines, or go for big data processing or go for Arudino, you have plenty to explore..<p>I personally feel, there is nothing wrong to switch the work, as long as you have the desire to obtain the specific label in that area and dedicating yourself for it.
ishanralmost 10 years ago
One reason for this is also that there are not many intermediate books on web dev. There are beginner books and then there are advanced books. Once you know the basics its a bit difficult to advance on the path without proper guidance. So you turn to other places and that is where you see the crazy linux hacking and you think OMG! this is real programming.
RaskalFlootsalmost 10 years ago
You know what I love about PHP? My six-figure salary. If you&#x27;re making more than $150 grand or doing Haskell, I&#x27;m willing to listen. Otherwise, I care less than a squat about anyone&#x27;s opinion of PHP.<p>I&#x27;m not pretending to be Alan Turing or Bill Gates or whomever, but I make a very good living, provide a valuable service, and I&#x27;m grateful for it.
atlihalmost 10 years ago
I find web developers in general more knowledgeable. Sure they are not working in low level programming, but those that are working in low level programming often don&#x27;t know what DNS, FTP or SQL is.<p>Remember that those who work in low level programming had nothing to do with writing the language or building the compilers. They just got a degree and started working.
评论 #9911298 未加载
brightballalmost 10 years ago
After reading this, I felt like I needed to writeup my thoughts on the matter in a more permanent form than the comment section.<p><a href="http:&#x2F;&#x2F;www.brightball.com&#x2F;development&#x2F;no-such-thing-as-real-programming" rel="nofollow">http:&#x2F;&#x2F;www.brightball.com&#x2F;development&#x2F;no-such-thing-as-real-...</a>
SiValalmost 10 years ago
Okay, Joe,<p><i>I had to drop out at age 20 to financially provide for my mother (who was experiencing a major depressive episode and could not work)...</i><p>It&#x27;s possible that you are experiencing the same thing. I have no qualifications to offer in this respect, but don&#x27;t take this possibility lightly.<p><i>...and my two younger siblings (ages 2 and 6 at the time). ... There I was at age 20 providing for a sizable family... being a good son for my mother and being a good brother for my siblings. I was performing the role of the man my father and my siblings&#x27; fathers refused to be. I was entering the workforce as a real programmer. I was proud.</i><p>Oh, and rightly so! A real man is someone who steps up like this--someone like you--not someone who implements file systems in assembly.<p>So here is where I might have some qualifications to offer. I&#x27;ve been a pro developer since before you were born. I&#x27;ve done orbital calculations, nuclear weapons effect mitigation, realtime hardware, done standards committee work...in so many languages (Fortran, Lisp, C, C++,...up through Swift), but there have been times when the development platform I&#x27;ve chosen has been one that was held in low esteem by a lot of programmers (BASIC, Perl 4 CGI years after Perl 5 w&#x2F;mod_perl was common), or not even considered programming at all (e.g., Excel, FileMaker).<p>I chose these as the best tools for the particular job under whatever normal or bizarre circumstances existed, and whatever tool, X, I was working with at the time, I was known as &quot;the X guy&quot; by my coworkers. And those coworkers have changed again, and again, and again, so remember me as an X guy, others a Y or Z guy.<p>I eventually learned to just focus on being as valuable as I could. Usually, what people need most from me is not arcane physics or CS knowledge (darn it! I worked hard on that) but just my ability to find them a solution that is most helpful to <i>them</i>. The most helpful solutions are usually not technologically impressive, as it turns out. I&#x27;d rather build them some microservices in Go but sign them up for SquareSpace instead and fill in a template.<p>Turn your attention, not to other programmers, but to the people you can help with your skills and to their problems. Try to get a lot more of your professional satisfaction from being useful to people who need you and less from how elite you think you are perceived to be by other programmers.<p>Web dev gives you all sorts of ways to be extremely useful to people. Do it. Feel good about solving their problems and let it motivate you to keep improving your ability to come up with valuable solutions. Yes, I understand that building yet another CRUD web app to sell dog food or whatever doesn&#x27;t feel like curing cancer, but those people are trying to support their families, too, and it&#x27;s not easy, and they need your help.<p>At the same time, yes, I can relate to a personal desire to do technically demanding work (but do it for the personal satisfaction of taking on the challenge, not to impress other programmers), but the way most people get into that is not usually to get an advanced degree. They prove themselves valuable at less technically demanding work, work on side projects in areas that interest them to develop new skills and, at some point, they spot an opening to utilize (make useful) those new skills for their employer. If it works out, their job responsibilities might change. Do it again and again, and eventually they will change.<p>I hope that turning your focus toward the people who need you and away from other programmers can help restore your self-respect and motivation. Good luck.
lekealmost 10 years ago
That was a great read and something I&#x27;ve experienced myself. It&#x27;s nice to hear I&#x27;m not the only one with doubts about my abilities. Hopefully, it&#x27;s these doubts that will empower us to become much better at our profession, so good luck to us all.
ameliusalmost 10 years ago
I have two problems with web programming. One is that the tools (e.g. HTML, CSS) seem to be designed for non-developers.<p>The other problem is that it is really, really hard to build a business on intellectual work, since eventually all good ideas end up as open source.
timvpalmost 10 years ago
Good article. Web development is not the same as embedded development of course but it is also not just &#x27;generating&#x27; CRUD applications with some js&#x2F;css to make it nice.<p>Hope to see him succeed in his reinvention of his career :)
wedesoftalmost 10 years ago
It&#x27;s not about being able to do harder and harder things. It is about making hard things easy. When you help others like that, you will realize the value of your work.
vivainioalmost 10 years ago
For something fun yet with that elusive &#x27;real programming&#x27; edge, play around with Rust.
评论 #9912317 未加载
kukabyndalmost 10 years ago
one of the best posts and threads recently, thanks for sharing everybody!
sklogicalmost 10 years ago
Nothing really changed since the times mocked by <a href="http:&#x2F;&#x2F;web.mit.edu&#x2F;humor&#x2F;Computers&#x2F;real.programmers" rel="nofollow">http:&#x2F;&#x2F;web.mit.edu&#x2F;humor&#x2F;Computers&#x2F;real.programmers</a>
ihswalmost 10 years ago
Honestly I think the author wouldn&#x27;t have such a crushing sense of inferiority if providing for his family wasn&#x27;t an issue.<p>I&#x27;m very serious about this -- few people can handle the Sword of Damocles[1] hanging above their hands, those impossibly high stakes, that not only are they intimidated but they&#x27;re <i>paralyzed</i>.<p>It&#x27;s a deer in the headlights moment, except instead of being in an instant it&#x27;s experienced over the course of days&#x2F;months&#x2F;years.<p>Morbid fear of failure can be crippling, even if you&#x27;re more than capable of completing the task, and failing so consistently -- in the case of the author -- can actually have a <i>damaging effect</i> on your capacity to do such work. You regress.<p>How does one handle such situations?<p>[1] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Damocles" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Damocles</a>
dummy7953almost 10 years ago
There&#x27;s proactive and reactive aggression. Proactive aggression is the typical bullying of others based on what programming they do. It&#x27;s basically just another way to pat yourself on the back, and people eat that shit up.