Software Patents Are Crumbling, Thanks To the Supreme Court
The way it works is not relevant: What matters is that, if I am writing code under a patent system, I am at risk of doing something that has already been covered by a patent. I can check for patents related to what I am doing, which is a major drain in productivity, and will increase penalties if it goes to trial and I am infringing, or I can code without looking, and be at risk that I am reinventing something that I never knew about.
It's those costs, or the uncertainty that comes from acting as if the risk of getting sued do not exist, that make software patents a terrible deal.
Unpopular Programming Languages That Are Still Lucrative
It's interesting how many programmers make decisions while ignoring the wisdom of the high school girl. When in doubt, you pick something that is popular. When you are really good at it, you pick something that is going to become popular, and by choosing it, you make it more popular.
Seriously though, it really depends on where you are, market wise, and where you want to be. There are a lot jobs around here for Java programmers that understand Spring and Hibernate. However, the people hiring for those jobs are looking for competence, and little else. You won't be able to ask for a great salary in those conditions, because while good performers aren't that easy to find, the hiring pool is also pretty large.
Instead, imagine that you have 15 years of experience, and you want to remain technical. At that point, having a decade of experience on the exact same thing won't really help you. Your selling point has to be that you've seen everything, and that you are up to date with the latest and greatest. So you don't look for yet another generic job with popular tools: You have to learn shiny new things, and sell that your know-how with many tools means you'll make a lot less architectural mistakes than a youngster. At the same time, this gives you a chance of getting into a technology early, when finding experienced people is harder. You ride the top of the wave, get paid well, and can keep in the tech switching train.
Soyou need both serious knowledge of a couple of popular languages, and then to try to spend your time working on the less popular ones, that are still growing, because that's where real opportunity is.
IT Job Hiring Slumps
The market slumps because there's a whole lot of people that show experience companies do not want.
My project at a huge company just finished, so I started looking for another one: I interviewed in six places, got six offers in two weeks, 2 paying as much as my old job, 4 paying from 10 to 20% more. 4 were from companies in town, 2 were bay area companies asking for telecomutting. The salary that pays for an OK experienced programmer in the bay pays more than an architect makes in the midwest, and it's hard to hire in the bay if you are not a big name, so companies are starting to look outside for quality candidates.
But that's the thing, an applicant need a resume proving that you learn new skills quickly, and that he is working on tools that are growing in adoption, like languages with functional programming elements. The cost of a bad hire is just very high, it's just too risky to get someone that has a good probability of not working out.
Predictive Modeling To Increase Responsivity of Streamed Games
Let's take a humongous game: 10 gigs. How long does it take for an in game, low compression, high quality video stream to be a whole lot more downloading time than those 10 gigs? And remember that predictive streaming can take 4 times more bandwidth than regular streaming. I would be surprised if you don't get to 10 gigs in a few hours.
I just can't see a world where, on average, you save bandwidth by streaming games. Quite the opposite, in fact: This system is a non-starter in a world of bandwidth caps.
Predictive Modeling To Increase Responsivity of Streamed Games
The bandwidth problem is not on the way out (it's bigger than you think, but it's still small), but on the way in. It's a 1080p video stream that has to be compressed on the fly that cannot do any significant amount of buffering. Netflix already eats bandwidth for lunch, and that with compression algorithms that can run for as long as you want to optimize bandwidth use. So we get weaker compression, and we send a user 4 frames for every frame they see, so 8 times the bandwidth of Netflix for the same image quality.
So yeah, if there are data caps, they better be in the multi-terabyte a month range, or you just can't use this system at all.
If Java Wasn't Cool 10 Years Ago, What About Now?
Java is uncool because it moves at a glacially slow speed, and has an ecosystem full of enterprise tools that do nothing but slow us down.
The first real shock came from Ruby on Rails. I'd never use the thing for anything large or requiring much customization, but it sure showed many Java programmers how the state of the Java art, full of Spring and Hibernate, was pretty unproductive, all things considered. To write production code, you don't really need the mess of AbstractFactoryProviders that Java had become. After this, we started seeing people writing JVM languages that cut some of that madness.
So now Java has been playing catchup to Scala, Groovy and Clojure, because you have the same Write Once, Run Anywhere features, but the code is 1/3rd of the size. Even languages that try to work on closed ecosystems try to mimic that kind of style: Just look at how much Swift looks like Scala's reference-counting cousin.
Java's inability to evolve the language will remain an issue for the foreseeable future. Just look at all the things java 9 is supposed to offer: The roadmap could be sold as a cure for insomnia.
Google Wants To Test Driverless Cars In a Simulation
The problem with real life testing is that it's so absolutely slow you won't even go through the examples you can think of.
Simulator testing is a bit like property based testing on software. I come up with a 'test envelope' of things that could possibly happen, and let generators combine them in many ways, as to check way more options that I ever could with example based testing. Then we run a few thousand of those random scenarios every build. If there's ever a failure, it's recorded and we can reproduce it
In something like a car, your test envelope might be bigger than even in the largest property based testing system, but then you can just add that entire family of circumstances to the test.
NFL Fights To Save TV Blackout Rule Despite $9 Billion Revenue
Regular, over the air TV football is not really better for the football geeks, because camera selection is based on what is more spectacular, but misses quite a bit of action. You only get to see a wide receiver when the ball is thrown in his direction. Is he playing his best and getting beat? Is the QB just missing open receivers? Is a receiver just not trying when he is not the top option, giving away where the play is really going? Good luck getting any of that from the TV broadcast.
There is a camera that shows everything through: All 22 players, all the time. But since it's very far away, it trades bring close to the action away in exchange for great Xs and Os information.
It'd be far better to have this camera, which coaches use all the time, along with a close view of the action, but the only good way of getting close to that live is to have what an offensive coordinator has: Access to the TV broadcast, while being able to watch the game live from a relatively high vantage point, instead of down at the sidelines.
Valve Discloses Source 2 Engine In Recent DOTA 2 Update
I am sure you have heard that the proper way of talking about the next half-life sequel is to call it Ricochet 2. It's the only way to get Gabe to actually tell you anything.
Ask Slashdot: "Real" Computer Scientists vs. Modern Curriculum?
If there's anything wrong with starting with Java is not really the old thing about memory management: Today, many languages used in the industry are garbage collected one way or the other, yes, even in games.
However, the problem with Java is that it teaches you relatively little of what a programming language can do for you. It's a language that moves glacially slowly. It just now got basic support for lambdas. It's still about as verbose as you are going to get this side of Cobol.
So if I had to recommend a curriculum today, I'd make sure students can see the world outside of Java. Even within the JVM, Clojure, Scala and Groovy are are much nicer to work with than plain Java. One could teach some F#, or some Haskell. A key part of being a professional developer is learning new tools, so why just teach one?
Ask Slashdot: "Real" Computer Scientists vs. Modern Curriculum?
I wonder if it's you that has to give back your geek card.
No, competent Java developers do not call the garbage collector at random. Or ever, really. However, there are often memory problems with Java apps that, from a user's perspective, are not really much different from a traditional C leak. What we do in JVM languages is make sure that objects are out of scope as early as possible, so that the garbage collector gets to them quickly. It's very common to see silly mistakes like making data structures grow without bound because code keeps adding to them, and never getting removed. It's not a memory leak, in the C sense, but your memory use is growing without bounds, and without doing anything useful, just the same.
There are quite a few variations of issues like that: A reference or two can make many megabytes worth of objects not get marked for deletion. If you had ever opened a Java profiler, you'd have seen that managing this kinds of memory problems is seen as just as important as figuring out what parts of the code are hogging the processor.
NFL Players To Use Tablet Computers During Games
Many, if not all NFL teams, already issue ipads to players to hold the playbook and film clips: Before you had to hand players tapes every week, and update the playbook, which used to be a big binder where you had to switch pages in and out.
What they are talking about replaces the binders with pictures of previous plays that you can see quarterbacks check on any TV broadcast. I guess that now that it's digitized, instead of stills, they'll get a video feed from the all-22 camera, and some way for the offensive coordinator, up above, to send bookmarks to the players on the side of the field.
Critics To FTC: Why Do You Hate In-App Purchasing Freedom?
It takes you 3 seconds to type a secure password on a tablet? You are pretty fast. 10-12 characters, many of which require a mode change... 18 taps or so. It takes me 15 seconds to type what it'd take 2 on a real keyboard.
At the same time, I would much rather type the password every time in the tablet that my son uses than have to police the darned tablet for 15 minutes after I type my password.
Nintendo Posts Yet Another Loss, Despite Mario Kart 8
There were many reasons, not just price: The Spectrum demographic was a bit older, the games were cheaper, and it was far, easier to figure out if you were buying something good like Knight Lore or the terrible Uchi Mata, because cheap. monthly magazines reviewed them: If you were old enough to buy the games, you were old enough to read the magazine first. Game magazines got tapes from the studios and publishers in time, so it's not as if you had things like the ET debacle. ET didn't hurt the industry because it was a bad game, but because enough kids actually got it.
Yes, it makes some of us cancel, but some companies still do it. Charter will call you mercilessly if you do not have a triple play package. After they managed to call me 5 times in the same week, I just got fed up and switched to another evil company, but at least one that doesn't spend all their days nagging me.
Programming Languages You'll Need Next Year (and Beyond)
You'd be surprised if you looked at the real productivity of some of those people that have very real understanding of advanced programming concepts. I've worked, and seen code, from people who build well known functional libraries. Speak in conferences, write papers... all that stuff. But when you hand them a real life problem, they end up going for an extremely convoluted, mathematically correct solution that, when put on a real system, does not work, because some assumptions are wrong.
That doesn't mean that you can't be a good coder if you have a firm understanding of free monads. Understanding of complex, impressive CS stuff and being productive writing reliable, easy to maintain code that does what it's supposed toorthogonal to each other. Do not assume that being good at one makes you good at the other.
Dungeons & Dragons' Influence and Legacy
There's people that shit on D&D, like me, who say it not because it's an RPG, but because it's arguably the least social RPG system this side of Rolemaster. How many haven't had experiences of groups whose main focus was to try to maximize their combat efficiency, all else be damned? Then you have two games, a fine social game, where the combat people look bored, and suddenly combat, where the people that spend their days pouring over many pages of unnecessary rules enjoy themselves.
I like tabletop strategy games. I like Role playing, but D&D manages to get into the 'ugly valley' of having the worst of both worlds. If I want to play a tactical game, I play that. If I want an RPG, I look for something with a lighter combat system, or one without it altogether. D&D? Yuck.
US Senator Blasts Microsoft's H-1B Push As It Lays 18,000 Off Workers
Tech skills often just translate very well across companies, so major efforts in training will make it easier for the employee to leave. Compare that with, say, domain knowledge: Knowing what your company does better will not help you get a job that pays better elsewhere. The end result is that training is the most attractive fora company that pays extremely well and rarely loses employees: The kind of company that does NOT need to train anyone, because it becomes a top destination of their market.
Who has trouble hiring? The companies that, for other reasons, have trouble with retention (and no, it's not a money problem except in the most egregious of cases). And if those companies start training people that lack the skills, they will stay for 6-12 months and leave to the next gig at one of those more desirable companies.
In engineering, employees' knowledge translates worse across companies, so they all need to provide training, so this problem of a lack of equilibrium I described is not the first thing hiring managers will talk about.
Microsoft's Missed Opportunities: Memo From 1997
Modern dryers offer timed settings, but they are not the most efficient: The recommended settings stop when the clothes are dry enough. This changes with the season, the specific set of clothes you put inside of it, and all that. So if you don't want to go downstairs in the worst case scenario, you will make multiple visits every so often, because you just got there too early.
If Immigration Reform Is Dead, So Is Raising the H-1B Cap
So is this theoretical programmer at home, playing poker, because he doesn't like the current wages? Because if he is at a different programming job, and he switches jobs because wages went up in a different employer, there's still an opening, just in a different company.
I for one do not think there are many people refusing to get a programming job because of low wages, but your local market might be very different from mine,