Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror

Comment: Not easiest to read, but forgiving... (Score 3, Insightful) 379

by Craig Cruden (#49742683) Attached to: The Reason For Java's Staying Power: It's Easy To Read
The popularity of Java is not because of it's "easy to read" nature, but because it is fairly forgiving for programmers that don't really know what they are really doing.

I programmed in Java for 15+ years and it is not the best language now (more of a legacy language) that tends to get riddled with boilerplate code which requires code generation and produces an outcome that is not as clear and concise as it could be.

It is however a forgiving language where if you don't understand memory management -- it is not a big problem. For example I remember a system written by programmers in another language that was riddled with memory leaks because of cylindrical references. The code was literally translated into java and all the problems disappeared. The programmers on that project just figured that the language that they programmed in was the problem -- but in reality java saved them from their inability to understand the basics of what they were doing.

Comment: Very few good episodes this year... (Score 1) 214

by Craig Cruden (#49693013) Attached to: Harry Shearer Walks Away From "The Simpsons," and $14 Million
There were only a couple good episodes this year..... I use to enjoy watching pretty well all the episodes, but it is more of a chore these days watching episodes - sometimes skipping through them waiting to find one gem in the rough.

It is close to the edge so it might just be the right opportunity to end the show.

Comment: H1B distorts the market - a form of slavery (Score 5, Interesting) 611

Simple solution is to change the rules of the H1B visa..... not by stopping the "skilled" immigrants but by having every visa come with residency - which would free a skilled worker to work anywhere and not just for the sponsoring company. I have personally seen the impact on wages for H1Bs because of the need to stay with the company while the company works through the process for residency (which can take the full 6 years). If they change jobs the residency process has to start again, which makes the company not having to compete in regards to wages for H1B visa holders. Competition is good, H1B to residency process depresses it and distorts the market.

Comment: Re: Not happy = more money (Score 1) 425

by Craig Cruden (#49623959) Attached to: The Programming Talent Myth
If I like the work environment and the work.... the money is not as important (though I do like to be paid well).... but if I am not happy with either, I demand much more in compensation.... (I have been in both environments). If that makes me a sucker, I want to be a happy sucker.... Most people in this world are not happy at their work.... which is pretty sad....

Comment: Re:Programmer worth/productivity vary a lot. (Score 1) 425

by Craig Cruden (#49620543) Attached to: The Programming Talent Myth
A bumbling person on an assembly line eventually learns enough motor skills to come useful to a point. American automotive plant unions have typically made it difficult for the best of the workers to excel since if one excels (and stands out) then it shows up other workers which unions have an interest in protecting. My productivity numbers come from friends of mine that work in that industry. I have no friends that work for the Japanese car companies so I cannot say for certain that the productivity curve would not be more pronounced.

As far as thinking I am special.... I would say .... above average.... special only to my mom :o (self assessment - generally speaking). When I worked at Thoughtworks in the "early days" (15 years ago).... it blew my mind that there were so many talented developers working there at that time.... and to be quite honest it reset my assessment of myself because of it.... There tend to be what I would call "blue collar" development shops, and "white collar" development shops which reflect the management of the company more than anything. Companies which value developers, and companies that just view them as resources.... "Blue collar" shops the management view it as just hiring enough monkeys to fill the work. You can end up with programmers that have the mental acuity and skills to be great developers, if given the chance, in blue collar environments..... but they tend to be more rare there because a company that does not value it are not going to attract the best in large quantities.... they will end up with people choosing to work there for other reasons (location, just getting started, etc.).

The reason why I consider myself an above average developer is that I actually am interested in all sides of what I do. I take an interest in reading and learning from other people, learning new languages, and most importantly -- learning the industry of whatever I write software for. I don't know how many times I have run into people that have no interest in the industry they are writing programs for.... they just want to be spoon fed some specifications and then they will program to them. Unfortunately, most specifications I have seen are .... skimpy at best and sometimes a misinterpretation of what the customer wants.... when someone does not take the time to learn the industry -- they don't know what questions to ask to make sure they are actually developing what the customer really wants and not just what they said they wanted or yet worse.... a misinterpretation of what the customer said they wanted.

People that have the mentality that they are the best and above all those that they work with -- are not likely to be the best software developers. They will get to the point where they won't listen, and if you don't listen or are not open to criticism about your work then you will not learn. Software development is a life long learning pursuit, it is not some skill where you go to school and graduate and now you're finished..... I have run into many developers that don't bother to read anything more, learn anything more .... they just churn out code the same way they did last week, last year etc.

I have had programmers that you give them assignments, they ask questions, they ask the same questions.... but their ability to absorb seems to be limited.... 3 years later - they are still out classed by people fresh out of university.... You have people that .... for lack of a better word approach each assignment with a level of trepidation -- and fear of making mistakes tends to make people not very productive. If you are afraid of making mistakes, or are afraid of acknowledging them.... you also will not learn....

Comment: Programmer worth/productivity vary a lot. (Score 4, Insightful) 425

by Craig Cruden (#49619755) Attached to: The Programming Talent Myth
When you work in a manufacturing plant making cars (for example), a productive worker if allowed to produce is about twice that of a poor producer.... When it comes to programmers/coders the quality and productivity of your upper end programmer can easily be 12 or more times as productive as your weak programmers. In worst case examples some programmers are actually a net negative when it comes to defects etc. The wages however tend to vary between 2 and 3 times your junior programmer (who could be a star or not himself). Some programmers are overpaid at the bottom pay scale, and some are underpaid at the top end. I have worked at some of the top companies, and some that are far far from it so I have been able to see both ends of it.

Programming is a natural skill which can be enhanced greatly when you work in an environment that values talent and you have people that are better than you or at least near the top of their game if you are one of the gifted. I have seen University graduates that are at best average, and I have seen self taught programmers that are among the best......

In short it is not a myth.

Comment: Re: Distrust of scientists and not science... (Score 1) 173

Science itself does not have a bias, but scientists have bias' and they have vested interests. Who is going to bite the hand that feeds it? It does not mean it is a conscious bias, but as humans we all have bias as such the "expected" result has to be hidden in some sort of double-blind methodology.... For hair -- give them the prime sample and then 10 or 20 samples that have a mix of similar DNA origins (i.e. if it is asian hair - 20 samples of asian hair mixed in with the suspect sample to match to). For reporters, after they write a story - the story should be vetted by a knowledgeable scientists to make sure that the summation of the work is inline with what the scientific paper is actually indicating (often it is 90 to 180 degrees off of the scientific publication).

Comment: Re:Lifting a *PDP*?! (Score 1) 85

by Craig Cruden (#49447305) Attached to: Intel's Core M Performance Is Erratic Between Devices
It was such a long time ago, I can't remember what it said on it.

It was probably about the size of 4U rack (though it was not in a rack), the bootstrap I believe was input by a series of switches..... (it was not long - maybe 16 or so words) - I think there were 16 switches.... It would have been around 1978 (I believe I was 14 while doing some free work in the datacentre - though the big computers were around 100 miles away).... and it was probably not leading edge :p. I remember the tail end of an era.... the programs were still on punch-cards that were loaded in and transmitted to the big computer for real work.... (not the small one) which probably disappeared the following year or two after that work experience.....

Comment: Re: It is about balance and sufficient resources.. (Score 1) 85

by Craig Cruden (#49447053) Attached to: Intel's Core M Performance Is Erratic Between Devices
HDD is many orders of magnitude slower than SSD and quite a high latency, SSD is orders of magnitude slower than Memory, Memory is orders of magnitude slower than CPU cache etc. Getting a much faster CPU (GHz wise) does not increase the performance of the machine as much as many seem to be brainwashed into thinking. If you just upgrade a CPU with one 30% faster you will only get a fraction of that overall. It is all about having sufficient resources when you need them for the task at hand.

Performance for user computers (as opposed to servers) is very much about perception. If your application opens snappily to begin with, the user will feel the computer is faster. If there is sufficient CPU power when you need it, it will have the same effect. It is all about balancing and making sure that your slower components are not needed as much as your faster components. Most users have CPUs sitting 85% idle most of the time..... getting a faster CPU only will increase the amount of idle time and not give the user a better experience.

The greatest performance boost in recent times is the advent and rapid improvement of the SSD. The stock CPU in many computers is increasing in performance in the single digits...... The majority of applications don't tax even the Core-M CPU (for the majority of users).

Comment: Re:History repeating (Score 1) 85

by Craig Cruden (#49446743) Attached to: Intel's Core M Performance Is Erratic Between Devices
I suspect the Macbook makes better use of the Aluminum shell as a heat sink of sorts. One review said the laptop would become warm (but not hot) under load - and was not throttling..... There were issues with power utilities for Lenovo early on with regards to this line - something Apple has worked on the last few major releases of OS X - which gives me some confidence Apple is ahead of the curve there. The first few Macbook benchmarks seem to match what I would have expected (above others) which seems to bear this out. BTW, Are you sure you are not remembering PDP.... since that was what we did with the old PDP-?? (11 I think) was if it did not boot - lift and drop then boot.

Comment: Re:New Macbook (Score 1) 85

by Craig Cruden (#49446691) Attached to: Intel's Core M Performance Is Erratic Between Devices
It may be as simple as how much a CPU/GPU is used in decoding the video stream (resolution / compression etc.). In addition the built in player is going to be more efficient than MPlayerX and VLC (I have noticed internal one can decode higher resolution videos on a machine than both of the others - I am guessing because of use of GPU or something).

Comment: Re:Automatic Reference Counting better... (Score 1) 211

by Craig Cruden (#49409901) Attached to: Rust 1.0 Enters Beta
It is functional at it's core but not purely functional. I could write purely functional code inside Scala, it is more difficult with Swift. Simple things like flow control in Swift is just that.... flow control.... not functions. if in Scala is a ternary function - similar to java ternary if - but more verbose. Switch - same. On things like optional values - I do not have access to map them to something else, I have to unwrap them using "if let" flow control structure. Swift could easily add most of these in effectively make Scala redundant, but as the designer of the language said.... it is not a priority at this time (aka don't count on it).

Yes, Scala is every bit object-oriented as Swift (actually more so since everything in Scala is an object, while in Swift the same cannot be said). I have NEVER heard Odersky admit Scala is a disaster. He has said that it needs a fundamental rethink as in make it simpler and moving things from core to non-core etc. All languages need that though. Java could really really use a rethink at it's core as well.... any aging language can. There are areas (edge cases) in Scala that are problematic. The compiling of the language is really slow. And of course the manufacture of the jvm has determined that they want to become a malware distributor....

What I am looking for is something along the lines of Scalas object-oriented / functional language balance in an LLVM based compiler -- that is cross-platform/open. Swift could easily get close enough if they wanted to. Scala can get there as long as they don't require exact language compatibility between the jvm version and an llvm offshoot.

Some of my readers ask me what a "Serial Port" is. The answer is: I don't know. Is it some kind of wine you have with breakfast?

Working...