last day (24 days later) » 

08:38
38
A: Should you refactor when there are no tests?

DogBoy37The world appreciates your "Piss and Vinegar". The next generation (you) are the future. The previous generations (us) are not stupid. Even those of us that learned on punchcards. Some of us acted like you are acting now, and were smacked down for it - in much less polite times. Please try to und...

There's a relationship between a software company's financial success and its code quality. It's sad it's understudied: folks like me would be able to make a much stronger case with more data at hand (though, I bet, some would still refuse to accept that fact). Your juxtaposition of commercial success and refactoring is, I believe, wrong
@SergeyZolotarev I've owned a software company for 40 years and our clients include the largest in their industry. Does anything that what I saying means something to you? Are you saying the Microsoft's quality must be great because they are successful? Are you saying that Borland put out crap? Novell wasn't as robust networking as Windows NT? I'll think about that while I'm watching a show on my Beta-Max. Print out this Q/A and reread in 30 years. You'll get a good smile.
You were taught by idealists; that's why they are in academia rather than in business. The principles you were taught were good ones, and you should strive toward them. You should not expect to find them already existing, or to actually succeed in achieving them. And no, there is absolutely no connection between code cleanliness and business success. I haven't run a company, but I did retire after 40 years in the industry. Stop seeking and idolizing perfection, and learn to focus on incremental Improvement and customer value. This is engineering. Make art on your own time.
@SergeyZolotarev I remember a coding forum I was a member of going through the Minecraft code back when it was first released, and it was a terrible, inefficient, poorly structured mess that was thoroughly ridiculed. The players of the game didn't care how the code was structured though, just that it produced something fun. That mess of code was sold for 2.5 billion dollars.
@keshlam that's an interesting take - I've rarely seen university teaching strong clean coding principles, it's rather a side qualification engineers typically acquire "on the side" often by learning from failures or seniors that saw those failures but that's just my perspective. All in all I would refrain from speculating about what brings about OP's strong perspective and just focus on the views they hold and whether those hold sway in the reality they are in.
@SergeyZolotarev unfortunately the reality is that indeed there is a relationship between code quality and financial success. That relationship often is: companies that have a lot of success typically have (at least some projects with) absolutely crappy legacy code. Cause they have good chances to have software that needed to react fast to success pressure or is older and had at least some period of low maintenance. The best and cleanest code is fresh code that never saw the challenge of a real world problem. That doesn't invalidate striving for good quality, but it doesn't always come first.
08:38
When Microsoft tries to succeed in more competitive environments, it often fails (Windows phones, browsers, emails). The key to their success is not product quality but separation of customers and users (users don't choose Windows, they have it preinstalled by hardware manufacturers) and not trying too hard to comply with anti-trust laws. The first part is also relevant for our company. When that's the case, user satisfaction is not as strongly linked to the company's financial success
@SergeyZolotarev, Microsoft fails nowadays largely because they keep trying to adapt and reconcile their successful approaches with a new market, and in doing so they erode even their success in the old market. Microsoft didn't succeed in the 90s because of non-competitiveness - it succeeded because it made and controlled the most competitive business software ecosystem available, and drove that home (illegally) to a virtual monopoly position, which produced massive profits but also massive consumer surpluses for industry from the purge of variation and deadweight competition. (1/2)
Like all American engineering companies that had a period of greatness (e.g. Boeing), it is now plagued by fascination of management with pure rent-seeking behaviours, the sidelining of engineers at the top of management (Gates has already done his life's work and retired, so have most of the others, including those who Microsoft poached from everywhere else in the 80s and 90s), and the deadweight of enforced competition has reintroduced costly variations and disintegrations of computer technology for industry. (2/2)
@SergeyZolotarev You could do what I did when I was 22 and didn't agree with my last 2 bosses. I started my own business. 41 years later my company is #1 is our niche market and I have 25 employees. Heres some things school didn't teach: Learning that marketing beats engineering - EVERYTIME. First to market beats best - EVERYTIME. Once software is delivered to clients, it isn't your's to make change willy-nilly. It is theirs. QA/Testing costs more and takes longer than dev. One pragmatic dev will get more accomplished than 5 idealistic devs. It doesn't count until it is delivered.
@SergeyZolotarev Oh by the way - I DO NOT RECOMMEND anyone start their own business. It isn't something to take lightly. There is a reason the majority of new businesses fail. It is amazing how I went from knowing everything (like you) to learning how to balance client needs, being responsible for 25 employee family's income, tech debt, picking dev stack for the next product, etc.
Facebook wasn't "first to market"
Facebook's UX/UI tickled the consumers more than the other offering did in an inmature market. Alta Vista and Ask Jeeves did a fine job, but the consumers just liked the UX/UI of google way more - we know how that turned out. Just out of curiosity, do you "mansplain" your partner? You seem to get off on explaining to us the basics of life. This whole Q/A has deviated so far away from anything useful, I am begining to wonder if we are being trolled.
@DogBoy37, "best" can beat "first to market" if the best is enough better. That's why we're using Google to search for things rather than Altavista, Lycos, Infoseek, Aliweb, HotBot, WebCrawler, Jumpstation, Dogpile, MetaCrawler, or W3Catalog.
08:38
@Mark there is a whole lot more to that "IF" than being better technically. Marketing, timing, luck. Heck - even the font - play factors into it. There is no simple answer to why a given product wins. It is much eaiser to pick losers.
as much as I hate the kind of code OP is dealing with, the "it is what it is" vibe is stronger that ideal thing OP said, I have worked in place where I thought like OP too, like, "how can people pay for this shit" but then again, the answer is in that sentence, someone pays for it and it's good. and like you said, most company wants money, not a perfect product, it would be nice to have an amazing product, but having a stream of money coming is more preferable lol
@Mark But that's a perfect example of why "best" is not technical. The reason Google won was purely because their search engine didn't slow itself down with ads, whereas every other search engine did, at a time when bandwidth was a major limitation. Literally no other reason. It had nothing to do with their search technology, which was on par with their competitors but not significantly different.
Downvoted; I think the core of the message is good, but delivered in an unnecessarily patronizing way.
@AdrienF I appreciate your POV. The OP was given several tech answers and numerous comments that they didn't ask for clarification but challenged the logic and experience of those that took their time to try to be helpful to others. I don't do the tit-for-tat that sometimes occurs in SE, but have you read all of the OP's comments? My goal wasn't to be patronizing, just to remind them that the world existed before them. I just hope my answer saves them and others some of the pain that comes with experience.
@Graham, did you actually use the Internet in the mid- to late-90s, or are you just going off of stories? Sure, the lack of ads (and the resulting rapid load times) was a plus for Google, but the big selling point was the near-miraculous quality of the search results. No other search engine of the time would have dared put an "I'm feeling lucky" button on the search box.
08:38
@Mark I saw NCSA Mosaic installed on our uni machines in 1993, back when the cross-Atlantic internet dropped to single-digit bytes per minute during the day. :) Google was good, but I still wouldn't say it was miraculous. In many cases it got "I'm feeling lucky" results through less pages indexed. Mainly I remember the benefit being bandwidth, which was a massive deal. A home page under 1KB meant it loaded in seconds instead of minutes.
 
9 hours later…
17:10
@DogBoy37 You're mixing up Betamax and Betacam. Betacam was the format that was better than VHS quality, and was even better than early optical storage format quality, which is why it survived as the preferred broadcast network format for archival and editing up into at least the 2000s. Betamax quality was about on par with VHS SP, not really that much better, and the tapes could never hold more than two hours; it was legitimately a worse format overall, that's why it failed.
Like, there absolutely are examples where the better format failed (BD vs. HD-DVD for example), but I'm just saying Betamax is a bad example of your point; it was legitimately a worse format by every measure.
 
5 hours later…
21:48
@Idran I remember our Betamax and VHS - when running the VHS in SP the Betamax was better. The Betamax could only hold an hour. Someone gave us a pirated copy of star wars (this was 1976 or 77) on 2 tapes.

  last day (24 days later) »