HN user

gbvb

409 karma

http://yetanothersoftwareguy.com

Posts17
Comments35
View on HN

Without sounding like a curmudgeon, "An even more egregious form of negative work is a developer who is stuck using out of date programming practices AND has a large amount of influence at a company. " can happen when new developers come up with ways of re-writing applications without understanding the full problem statement or spending the time to understand the existing codebase. Usually, they might have worked on a small to medium sized projects and show up to work on a project with millions of lines of code with teams in different geographies and expect to change things across the board. When the same explanation has to be given the 15th time, you can turn into a toad and start saying "NO" first. :)

The way I read this article, It is less about building new smartphone but more about the next technology shift that is going to change the direction. Basically, as oft repeated Ford statement goes, 'if you asked people what they wanted, they would have said faster horse'. So, at this point, smartphone business is settling into a faster horse business.

So, I would really expect the next big thing to be not a be an iPhone but something utterly different. Neural implants, anyone?

I have had lasership make mistakes couple of times (dropping of at the neighbors, claiming no answer when never attempted).. I complained to amazon about the shipping and I have not received any shipment from them via Lasership after that. I am a prime member though. (not sure if that changes)..

I think the problem is that it is not 'hate' like people are hating java. I think it is more that MS has become 'irrelevant' in circles that matter :) i.e. the consultants who go around telling new companies what to develop in.

If you see the pattern of adoption by developers, I see more developers walking around with Macs, and linux boxes and running VMs to test out IE compat than anything else.

So, MS has become another OS to work with than the OS to develop on. imo.

I had been in MS ecosystem for 10+ years before moving to other technologies and it has taught me more about concepts of distributed computing (dos and donts) than anything else. I can apply those to any problems i see today. But, I will likely not not develop another asmx and aspx page.. :(

I think there might be a need for providing a decent layer between the various closed layers created by Amazon, Google et al. At least, that would allow apps to be friendly to Android without marrying Google Play.

(Is there one?)

Thank you for that explanation and the example. I love that calculator. I see why skeumorphic free design is hard to find. :)

Do you have good examples of true 'flat' design? I fear that if we are too flat, will it endup becoming an abstract entity that needs explanation on what that is meant to be? I thought the ones you point out seemed like good examples of not too abstract kind. :)

Software development is like movie making: http://www.silicon-stories.com/movie-making-software-develop...

Software architecture is like city planning: http://www.windley.com/archives/2003/09/enterprise_arch_4.sh...

Software development is not like manufacturing: http://www.codinghorror.com/blog/2006/10/is-software-develop...

Software development is like manufacturing: http://www.amazon.com/exec/obidos/ASIN/0321150783/codihorr-2...

I believe that software development can be disciplined (development of missile control systems, payroll systems) or be agile (instagram, pinterest, facebook...). I think it all depends on what is considered to be the most valued resource for the organization and the software it is planning to build/compose/manufacture/make.

If we value system resources (real time constraints, compliance, SLA), we tend to be more like building systems. If we value end users experience in the final outcome, it tends be agile and take the notion of the movie/novel et al.

IMO, Art exists for the sake of itself. It serves no other purpose. It has no intrinsic value. Whether you like it as is or not is a different question.

So, while anyone call anything art, If the random shopper is doing to have a surprise gift every month, it is not exactly art. But, he is doing to this to show the world how random materialism looks like, I guess he has a point. :)

The interesting part about timestamping change to records is essentially "effective dating" and it is bread and butter in any transactional system that needs to record employee info. This is done varying degrees to columnar values or entire rows themselves. In an RDBMS, you will create a compound key to allow you to know the history and the current record. I guess the new fangled NoSQL will make it easier to store it easily..?

I guess this is software's version of security theater. Make the users feel like the website is secure because there is a javascript running on the login screen to prevent you from pasting, never mind that you can probably not use pass phrases or spaces because the backend was built in 1995. :)

To the martians, of course. Don't you think they will have tax payer concerns like the rest of us? why do you think they have not visited us in such a long time. :)

I agree. I was commenting on Facebook "the social network" and not Facebook the "technology".. :) Anything that can be made to support such large transactions (be it with duct tape and glue) has to have a core capability to support such usage.

Ok. I was making a point but I guess you are right about lint. I

was trying to point out that it is easy have developers write code that can easily be O(n2) vs O(n log n) because this did not use the right kind of the maps when they were initially building the code. Or I can see developers using HashTables vs HashMaps interchangeably and not see the threading impact. In these cases, some basic questions about their understanding of the classes seem to be a good indicator. Would you consider that a nano-question? I was..

I believe Any senior engineer worth his salt should be able to do lint style verification of someone else's code quickly. When I am expecting someone to be a senior enough engineer, they should be able to look at someone's code during Code reviews and find the issues in it that can lead to problems without resorting to IDE/debugging.

I do agree that nano-questions are not useful except in situations where you get a resume with keyword bonanza: You know the kind, ones with every language,OS in the first page listed so that they will pass through the corporate recruiter filter. For those, nano-questions trip up but that will give me an indication to dig a little deeper into their IDE usage pattern. If they show some proficiency in it, (for e.g., tell me the command in Eclipse to find all the references to a particular method, if the answer is search in files, .. :)).

IMO, many times the ugliness of the code reflects the brittle thinking of the architect/designer of the application.

If it is designed to expect [rigid design] certain set of rules and not accomodate new and changing requirements, or if it is designed to accomodate unknown/made up requirements [overengineered design], you can endup with code that looks either like a framework for frameworks' sake or a perfect code for the set of known requirements.

In both cases, you endup either with code that cannot easily be modified [rigid] or you endup taking many shortcuts because the original design did (and could) not anticipate new requirements [overenginnered].

One of the ways to circumvent it is to know what you need design and what you need to be able to extend without modifying the original intent.