HN user

seajosh

61 karma
Posts7
Comments13
View on HN

Angular is rock-solid and I think its biggest feature is refactoring. It's not a sexy feature nor anything you can market but refactoring front-end code is something we all do everyday.

It is incredibly easy to refactor logic into services and modules and hold to the fundamental systems architecture principle: low coupling and high cohesion.

My only advice is this: if you're doing in something in Angular that seems too hard or kludgy, you're doing it wrong... and somebody on Stack Overflow has already answered your question.

I personally hate the "take home test" approach to interviewing. I've had multiple such tests that take anywhere from 10-25 hours to complete because simply answering the question isn't enough; you need to give textbook correct answers and your code must be formatted perfectly with the requisite comments and documentation. In short, it's pretty similar to an upper-level college course's final exam; however, in college, you can get a good grade with a few mistakes; in interviewing, you get rejected for a few mistakes. I'm done giving a company 15 hours of my time just to get to a first interview; this is arrogant, condescending, and completely devalues my time.

The reality of hiring is you're going to make mistakes, like every other part of running a business. Even in an extended "interview" such as dating for a potential life partner, people make mistakes so I'm not sure how the hiring process can be quantified to remove said error. The interview process is so excruciating these days I often hate the companies I'm talking with.

While we're at it, the skills requirements listed with jobs today are astounding. My experience is that a company wants to hire a programmer with at least a journeymen's level of expertise in 6-8 skills. If you have 5 and are comfortable you can learn the other 3, you're dead in the water. Let's be honest, the latest Javascript framework isn't that complicated. The latest NoSQL database isn't that hard to learn.

The truly hard parts of joining a new company are learning how projects are managed, getting the political lay of the land, finding a sherpa to answer your questions in the first couple of weeks, and learning where you fit within the organization.

Poorly, I'm afraid. There's nothing inherently wrong with PHP per se. 99% of the problems with PHP are the result of it being a language that novice programmers can easily learn and become productive in. There's nothing wrong with that and given the alternatives, I encourage it. However, novice programmers tend to write garbage code and attempt to overcome lack of architectural cohesiveness with brute force. This quickly devolves into spaghetti code and soon, Murphy's law raises its head leading to the programmer crawling under his/her desk and considering a life as a llama rancher when the web app craters in spectacular fashion.

The lesson from this is that a bad programmer produces bad code. Nothing can save us from our self and Pogo had it right many years ago when he said "We have met the enemy and he is us."