HNHacker News
TopNewBestAskShowJobs

FollowSteph3

938 karma · joined August 6, 2011

http://www.FollowSteph.com
submissionscomments
FollowSteph3··on Data Classes for Java
In fact you may want to edit the getter because who says you’re the one who controls the setter. As in there may be more than one way to set the value ;)
FollowSteph3··on Data Classes for Java
Let me give a concrete example from my past. We had a public API of POJO domain objects that could be used to render templated files, think string replace. It worked great until one day someone had a special character that caused it all to fail. How do you fix this? Ask all customers to clean their values? Good luck with that!! However from our side we just added the code to clean the output, escape the special character for the templating engine, and everything worked great.

The only other option was to have thousands of customers with live systems edit their templates and or data to fix that one bad character. It affected a lot of people due to another unrelated update. Anyways had we not been forcing the use of setters and getters a solution would have been on a whole other scale! And no we couldn’t edit the template engine, etc, because in most cases it was valid.

FollowSteph3··on Data Classes for Java
They are useless until one day they become extremely useful. In other words most of the time there’s minimal advantages. However by following good form you will eventually come across and instance where you have to do something and instead of having to change code in tons and tons of places, places you may not event have access to such as a public API, you don’t realize the importance. Hopefully you never across the need to do this, it’s pretty rare, but when it happens I can’t tell you how valuable it is.

The benefits are all in code maintenance. Again most of the time it’s useless but when you need I can’t tell you how incredibly useful it can be. And once you come across such an instance you never again ask why or refuse to do it ;)

FollowSteph3··on What Are the Most Disliked Programming Languages?
On a positive note for a language to be hated on that list it had to be successful and big enough at some point to be useful ;)
FollowSteph3··on What Are the Most Disliked Programming Languages?
I think it’s because it’s getting into the next stage. When it first came out almost all projects using it were new. Now it’s getting to the stage where new people are coming in to maintain existing RoR code bases, and that’s very different. RoR is great for quick development but it can be much more challenging to jump into an existing code base that’s been running for a while and has had a few different developers go through it ;)
FollowSteph3··on Menuet – A pre-emptive, real-time and multiprocessor OS written in assembly
Does it feel any faster than a modern OS not written in assembly?
FollowSteph3··on Firefox marketshare revisited
I disagree with the article. When Firefox first got popular the default was internet explorer which was already installed on your computer. However because Firefox was so far ahead word spread and people took the time to install it.

These however there is no really big advantage to using Firefox over chrome, and when the difference is that close marketing and convenience will win. In other words if Firefox would've been on or with internet explorer years ago it would never have gained the market share it did in the first place.

It's not just a marketing issue but a combination of a marketing and engineering issue.

FollowSteph3··on 16nm ARMv8 SoC for servers and workstations
I got the same thing too. I think it's a paid ad on their website and not intention by them
FollowSteph3··on Show HN: Get Paid to Build Your Next Side Project
The devil is in the details. The items are so open ended that they could just about anything...
FollowSteph3··on Lessons I’ve Learned from Three Million App Downloads
It's sad that people aren't willing to pay $1 for an app but are willing to purchase in app features. I feel mobile software is moving in this direction and that it will only get worse with time. The sad part is it makes software more complex and hence more expensive overall, and you probably end up spending more over the lifetime of the product...
FollowSteph3··on Is the keyboard faster than the mouse?
If you really want to see the advantage of keyboard hotkeys just look at the top Starcraft players. Yes they still use their mouse but they need hotkeys to even be able to compete at that level. They actually measure the number of actions they can execute per minute! There's no way it can be done only with either just the mouse or keyboard

I think software development also falls into this category. Some hotkeys are at least an order of magnitude faster. And 90% of the time hotkeys will be faster. But in some cases you absolutely need to use your mouse, it's just much faster.

Here's a YouTube video that discusses what it takes to be a competitive Starcraft player and shows them entering actions: https://youtu.be/zmYhX8fjmo8

FollowSteph3··on Should I fire an engineer for working on his side projects during office hours?
I think you cross a line once you go to working on your projects. To me screwing around and doing nothing is very different than working on your own project/business during company time. If you want to do anything educate yourself on the technologies your project uses, but don't directly work on it during your work hours. Even education is different. I draw the line at working on your business during work hours.
FollowSteph3··on The future of iOS is 64-bit only: Apple to stop support of 32-bit apps
They did something like this for the worst gen iPads. Two years and support was dropped. I believe they've also done it for Mac hardware too. So it wouldn't surprise me at all if they did it for an economy model of the iPhone.
FollowSteph3··on What Could Have Entered the Public Domain on January 1, 2017
Another possibility is a service that keeps track of people who give away their copyright rights. Or similar to a renewal fee which gets exponentially more expensive with time, at the very least we could require they at least resubmit a request to stay copyrighted every year. The key is that you want some action to be taken otherwise fs no longer copyrighted by default.
FollowSteph3··on US Navy denies it pirated 550K copies of software, says contractor consented
Accidental is not a valid reason, same as ignorance. Otherwise everyone could just say they accidentally committed a crime. That necklace accidentally fell in my purse, I was accidentally speeding, etc.
FollowSteph3··on Macs are 3 times cheaper to own than Windows PCs, says IBM's IT guy
It's because most PCs people use are bottom of the barrel cheap. If you compare similarly priced PCs to Macs with similar business class builds (keyboards for laptops, etc) I highly suspect everything will balance out, at the very least be minimal.
FollowSteph3··on Developer hiring and the market for lemons
You hit the nail right in the head, it was a different time. I remember back then how many people had completely fake and fraudulent resumes and a very large part of hiring was just trying to filter our the fraud. It was massive at some point. It seems to be better now but back then it was just incredible how much resume fraud there was :(
FollowSteph3··on Just shut up and let your devs concentrate, advises Joel Spolsky
Personally I think offices of 2-3 people who are working together on the same thing is ideal. You want some level of communication for immediate stuff but a barrier big enough for non-immediate stuff that others need to actually get up and go to you rather just pop their heads up. As well it allows conversations between interested parties while keeping it quiet for the other groups. I've found this to be the best setup for me personally.
FollowSteph3··on Ask HN: Why do companies buy ads when they are the top result in search?
Because competitors will big on your company name and you want to appear before them in the search results.
FollowSteph3··on Sad reality: It's cheaper to get hacked than build strong IT defenses
Even for prestige, is it ok for gang members to break and enter properties, even if they don't anything, for prestige? I suspect not so the same should apply.
FollowSteph3··on Secret Cameras Record Baltimore’s Every Move from Above
Assuming a non-oppressive government I'm all for using this type of technology to stop crime. It is a very powerful tool that will really level the playing field. Many crimes are from repeat offenders and this will just help catch them quicker and more accurately. I suspect crime rates will drop dramatically as a result of these types of technologies.

As for privacy we already give more away just to have free online services. Think how much is tracked by Google through their searches, gmail, etc. by Facebook to use their free service. Apple, Microsoft, etc are all known to track all kinds of data on you. It's not like this isn't already happening.

They key is to make sure it's not abused, and I think for the most part in first world countries this won't be a big issue. That and the benefits will far outweigh the costs.

We just have to prevent it from escalating like in the South Park drone episode ;)

FollowSteph3··on Pokémon Go loses its luster, sheds more than 10M users
Wait until school starts...
FollowSteph3··on Ask HN: Is it possible to run your own mail server for personal use?
It's possible but it's not worth it unless you have a lot of knowledge about it or a lot of time and enjoy it. That's why most small to medium companies outsource this to services like sendgrid, mailchimp, etc.

You can't do everything so you have to pick your battles ;)

FollowSteph3··on The Human Cost of Tech Debt
The concept of technical debt is easy to convey to management, the hard part is conveying the scale of the debt because it's an abstract value. You don't have x units of debt. And because there's no actual value to measure it's easy to keep adding it on, it's easily viewed as the same debt.

To give you an analogy imagine you have a credit card. As you spend you increase your debt but you never get to know want your balance is. All you know is how much you pay per month. In fact even that number would be blurry and fluctuate. That's what management sees from their perspective. As a result it's easy to keep adding debt because it had no real value, you don't see that you're $1000, $10k, $100k, etc in debt, just that you have to pay something each month. Yes each month you have less to spend but it's a lot less than you spent that month. Last month you had to pay $100 but this month it's $101 and you don't have to pay that $50 one Ike hit. The extra $1mth is easier. You kinda forget that in a year it's now an extra $2-$3/mth. And again you never see your balance, so you don't know how much you have in debt. Your spouse keeps saying your way in debt but you have no idea of the scale. It's very easy to increase your debt this way.

Unfortunately I don't have an answer as to how you can value the technical debt so that the business people can appreciate the scale. I don't think as developers we can even measure it ourselves accurately, it's more of a feeling, a scale if you will.

FollowSteph3··on Project delays: why good software estimates are impossible
Just a quick note, the reason many developers give quick estimates is that they know management won't give them the time to perform a proper estimate or they won't accept anything they don't want to hear, or after all is said and done will just override whatever you say and tell you how long it takes. This is wrong on all accounts but I would say this happens at 80-90% of companies. So after a while developers learn there's no point in even trying to give a proper estimate, or at least not spend a lot of time trying to be too accurate. That and many times there would be change requests, changes in features and functionality, but even less common was to see a revision of the estimate. I never saw a single revision, the original estimate was used, regardless how much chbage had happened since. I'm all for changing the features as you learn more but I've never seen an estimate be adjusted. If it's a year it stays a year.

What's even more interesting is that most of the discussions around anything tend to be bike shedding discussions, discussing the color of the paint, rather than actual hard stuff.

There are exceptions but that's much more the norm. You estimate based on what you know right now and it will never be adjusted if things get added. And you will only be given the minimal amount of time to make an estimate. And of course you hope they listen and agree, many many times your estimate gets overridden.

FollowSteph3··on Project delays: why good software estimates are impossible
I absolutely agree with you, what I'm saying is that this rarely happens. Most people say it's just bad management, but that's the norm. I use to consult until I started my own company and over the many companies I worked with maybe only a couple did it correctly.

Just to give you an idea, do you think Steve jobs ever really allowed an estimate like this or would've accepted it? It's not just him think Amazon, oracle, EA games, etc. they all have reputations for being aggressive and you either provide and estimate they like or they will provide it for you. And not just the big companies but most of the companies are like this too. Working long hours to try and meet estimates is more than common in our industry.

Again I agree with you, and I've seen a couple times, but that's it. It's very very rare is all I'm saying. It's part of the reason I started my own company. I understand that estimates are just estimates, and in most cases they aren't going to work without spending a good amount of time on them.

But even then an estimate is an estimate, the same as you get an estimate when doing some major renovations on your house. It's only when you open up the walls and do the actual work that you'll know the true time and costs. You can't predict the plumbing is bad and leaking in your estimation. And sometimes you don't even know who the staff will be. The only way to do a proper estimate is to start the actual work.

The only thing I disagree with is that what your describing is the exception rather than the norm. Well that and a week is not enough to do a year long estimate. Of course that also depends on the size of your team, it's easier to estimate for one person than a 20 person team. But 1 week is too short. but even with the appropriate amount of time you should still be ready to accept that once the walls are opened you never truly know what you will find...

FollowSteph3··on Project delays: why good software estimates are impossible
You've built a custom system with the exact same business requirements that connect to the exact same different sub systems, api, etc? It may be the same programming language and general framework but that's only a small part of most projects ;)
FollowSteph3··on Project delays: why good software estimates are impossible
So let me ask you a simple question, how much time do I have to give the initial estimate and how long do I get to increase confidence? Is it in the order or days, weeks, or months? I ask because a 25% confidence level on 4-8 weeks would most likely require some time to increase the confidence, more than you would be permitted.

I agree with what you're saying and that's all great and awesome but in the real world it unfortunately doesn't work that way. In most cases you have a day to a week to come up with an estimate for a year long project. If you by great luck get a cognate to do a spike, you get maybe an extra day. Ok most cases actually you would've maybe gotten an hour to a day at best and there would be no spike, and if you did get a spike it would be maybe an hour. Again I agree with what you're saying but it just doesn't work this way for the vast majority of companies.

Also is this real time or actual time? In other words does it include time for meetings, holidays, sick days, change in staff, etc.

FollowSteph3··on Project delays: why good software estimates are impossible
Have you ever tried to sell something to management with a 25% confidence level with an estimate that is at least 2x (4-8 weeks). You've just basically said your estimate is anywhere from a week to half a year, which basically means you have no estimate ;)

In terms of never having done it before, this is true of most software projects. If you're building the same house from the same plans then this is the same as say installing a Wordpress blog, easy to estimate. But if you were to ask how long it would take to build Wordpress from scratch, even having a Wordpress sample app, it would be very hard. Not only that but there are a lot of assumptions. Is it for a handful of visitors or are we talking a million visitor blog?

Ignoring that, let's go back to the pharma example. How long do you estimate developing a new drug will take? It's not the first drug your company has developed. Anything beyond a week is hard to estimate.

Back to your estimate of 25% within 4-8 weeks, this would never be accepted because it could mean anything.

The worse part, I an tell you right now, even if new functionality or changes are added, you will be elf to 4-8 weeks, the 25% will be ignored. And in most cases management will hold you to 4 weeks because this is what was sold to their bosses.

FollowSteph3··on Project delays: why good software estimates are impossible
But remember you're doing something novel so you've never hiked before, and so you can only estimate how much you can do each day. You may have done other travels but never walked that distance. Even if you half the speed you'll still be way off. And this is just 400 miles, what about a walk that across the whole US? Can you predict that Susie on your team will fall ill for a few week. How many meetings will management need? What about feature changes? How much time do do you have to estimate? So you have months to plan out your walk? Most projects need estimates within minutes to hours. And so on...
← PreviousPage 2 of 9Next →