3,683 reputation
820
bio website
location
age
visits member for 3 years, 11 months
seen 2 days ago

Nov
26
answered Where does the term “Front End” come from?
Nov
26
comment What are the best practices and strategies for transferring an outsourced software development project in-house?
+1. Re Is the product based on a technology that the third party owns, or does it require specialist knowledge? This should be separated into two bullets. The first half is a contractual / legal issue, and possibly introduces a reverse engineering problem. The need for specialist knowledge is a distinct question. This is a staffing issue.
Nov
26
comment What's a good length for Javadoc for a class that is say 800 lines long?
I disagree with everything but the first sentence. There shouldn't be arbitrary fields that have to be filled. The problem with documentation requirements such as the cited one is that they encourage developers to either break the rules (and then what's the point) or to write very large classes and very large functions because of the huge documentation penalty for small classes, small functions.
Nov
3
comment Should you promise to deliver a feature that you aren't sure if its implementable?
@Cliff: You missed the point of my analogy. There would be no airplane industry if only 90% of all airplane landings were successful. A 90% success rate is not necessarily something to brag about. That 10% failure rate might spell death to the industry or business. A business in which ones customers get very POed 10% of the time is not going to survive for long.
Nov
3
comment Does NASA license the software that it develops?
Why so many upvotes for what is a wrong answer? Panoply is open source. There's a rather liberal license agreement for it. The link to the Johnson Space Center Technology Transfer Office describes software developed at JSC. The link Peter Taylor provided describes software developed at Ames. Panoply was developed at the Goddard Institute for Space Sciences, an off-campus (and somewhat rebellious) part of Goddard Space Flight Center.
Nov
3
answered Does NASA license the software that it develops?
Oct
30
comment Is it actually possible to have a 'useful' programming language that isn't Turing complete?
@delnan - IMO, as soon as a standard allows limits, the language is not Turing complete. A program that runs on a real computer is not Turing complete. It's a poor man's substitute for Turing completeness, just as double and float are poor man's substitutes for the reals.
Oct
30
answered How to apply verification and validation on the following example
Oct
30
comment Is it actually possible to have a 'useful' programming language that isn't Turing complete?
What real programming language is Turing complete? Languages have implementation limits that essentially render them incomplete.
Oct
25
answered Why don't research papers that mention custom software release the source code?
Oct
20
answered Why learn more programming languages?
Oct
19
answered Refactoring and Open / Closed principle
Oct
18
comment What are programmers made to do in spare time in jobs?
Testing and documentation are potentially never ending tasks, Even more so than polishing the code. You can always do a better job of hunting down corner cases, see how your rotational integration handles a rattleback, do a better job documenting the design or how to use the product.
Oct
17
comment What kind of process should I use to learn a big system?
@SnOrfus - Companies put new employees on probationary status. They have to. Companies make mistakes in hiring. This goes both ways. New employees should view new employers as probationary. People accept job offers that in hindsight are really bad mistakes. Not treating a new employer as probationary is harmful to career, health, sanity. Lack of a mentorship program nowadays (the concept is not new) is one of those red flags that your employer is Nightmare, LLC. Looking for a job after having just landed one is not a fun prospect. Next time around, remember to ask the right questions.
Oct
16
comment What kind of process should I use to learn a big system?
As a side comment, new employees are almost always on probationary status. Companies sometimes do make mistakes when hiring. Joe "Looks Great on Paper" Smith is in reality Joe "Can't Program for Beans" Smith. This probationary status is a two-way street. People sometimes make mistakes when accepting jobs. What looked like DreamJob, Inc. is actually Nightmare, LLC. You should be just as ready and willing to fire your new employer as they are ready and willing to fire you during this probationary period.
Oct
16
comment What kind of process should I use to learn a big system?
Would the random driveby downvoter care to comment on the reason for the downvote?
Oct
16
answered What kind of process should I use to learn a big system?
Oct
16
comment Are long methods always bad?
@jk. - generated code isn't really source code. That is exactly the conclusion we came to. Those 50,000 lines just don't count. Not as SLOCs, not as artificially bumping our productivity rate, not as artificially reducing our defect rate. The code generator -- now that does count as source code.
Oct
16
awarded  Nice Answer
Oct
15
comment Are long methods always bad?
@Javier: Even at initialization time it can be a very bad idea, at least in a Monte Carlo setup. A simulation that takes minutes to initialize, but only seconds to run goes against the grain of getting tens of thousands of runs in overnight. Changing key initialization time tasks to compile time tasks fixes that problem. We've tried a number of techniques, including the compiled data structure approach. It just doesn't work or would be very hard to make work in some cases (e.g., a huge gravity model). The straight line code approach is easy to autogenerate, easy to verify. It's just ugly code.