The Insider News

The Insider News is for breaking IT and Software development news. Post your news, your alerts and
your inside scoops. This is an IT news-only forum - all off-topic, non-news posts will be
removed. If you wish to ask a programming question please post it
here.

Get The Daily Insider direct to your mailbox every day. Subscribe
now!

I especially like the new feature at 2:15 (3-part split screen), makes Metro apps looks less wasteful with screen space.
Also most features in the video kinda have the "this should've been there from the start" feeling. Granted MS users are already familiar with this I assume

Much of which was that by the time w7 was out the 3rd parties had finally updated their code past XP. Drivers (video, audio, printer) were rewritten and optimized for the 6.x kernel; consumer apps no longer blithely assumed they would be running with admin rights when they didn't really need them; etc.

Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius

Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt

The following post is a comprehensive summary of the developer-facing changes coming in Java 8. This next iteration of the JDK is currently scheduled for general availability in September 2013. At the time of this writing, Java 8 development is still very much in progress. Language features and APIs may still change. I'll do my best to keep this document up to date.

A comprehensive list of exploits will be available sometime after you deploy...

Short of a gun against my head nothing will convince me to move to either Win 8 or Java 8. In some cultures, the number 8 is a number associated with good fortune. Unfortunately, it's just Microsoft's and Java's bad luck to be stupid enough to name a crap product using the number 8. Both products were born on the banqueting table and both products are worthy of being dumped overboard down the toilet.

I'll steer clear of both like I do avoiding dogs poo on the pavement.

Jave 8? Windows 8? Thanks, but no thanks.

If there is one thing more dangerous than getting between a bear and her cubs it's getting between my wife and her chocolate.

Entertainment value; just like the bit of snark that comes with every other article send out in The Insider.

Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius

Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt

Right, well this particular one is a partisan straw-man. When was the last time you embedded ActiveX managed code in your page? Probably never--I haven't. It's not as if the ability to run .net code on the client ships with most browsers by default as core functionality. And if such a feature were offered:- The list of 'sploits would be a thousand miles long, and definitely not available before release (as if such an expectation were even reasonable or made sense);- Everyone would turn it off;- It would not count as a strike against the .net platform, but rather against the sandboxing policy in the browser.

I can't wait til HTML5 hits critical mass. Let's see how well the security issues around this are managed by M$. I'm betting on Not Well.

Like it or not of late Java has become known for exploits. Whether it is fair, and whether other systems will have as many problems (HTML5) is not the point. I uninstalled the Java runtime from my home machine. If .NET came with the abiltiy to run client side and had as little use to me and as many problems I might remove that too. Also, if a diet of burgers and beer didn't make me fat I'd be a model.

Until they fix their code and then their PR problem: Java == exploits.

The Java browser plug-in may be exploitable, but not so much "Java" itself. I understand, of course, that the label "Java" gets applied to a bunch of qualitatively different things. But using the label to cloud and misrepresent matters to users is irresponsible and unethical.

No one likes applets, not even Java people. But almost no one deploys them anyway. The Java platform itself (the back-end: language, JVM, appserver--which, btw, routinely runs on much more secure OSes than the IIS-standard Windows) is less exploitable than the Microsoft equivalent combination (.NET runtime, IIS+Windows OS), and it's this (either intentional or ignorant) implicit false comparison of applets (a marginal use of Java) with _anything_else_ that's incorrect.

Today's Little Program monitors windows as they come and go. When people contemplate doing this, they come up with ideas like installing a WH_CBT hook or a WH_SHELL hook, but one of the major problems with those types of hooks is that they are injected hooks. Injection is bad for a number of reasons.... This is where accessibility comes in handy, because accessibility lets you specify whether you want your hook to be an injected or non-injected one.

What looks like a silly trick is actually a necessary feature for accessibility in Windows.

There’s a treasure trove of excellent yet ancient games made for DOS that are nearly unplayable on modern computers. Awesome games like the Lucasarts SCUMM adventures, the original Civilization and SimCity, Starflight, the King’s Quest series and even Leisure Suit Larry aren’t played much today because of the near impossibilities of getting them to run on modern hardware or setting up an emulator with proper sound. Patrick has been doing his best to help out classic gamers with an x86 emulator for the Raspberry Pi. It’s designed to be a very capable DOS box with 20 MB of extended memory, a 640×480 display with 256 colors, an ~20MHz 486 emulated CPU, and a Soundblaster 2.0 sound card.

Turing patterns are a perennial favorite among science writers, especially in light of the 100th anniversary of Turing’s birth last year. Also? Pretty! And narrative angles like why the tiger has stripes play to broad audiences, so editors love them too. Scientists, on the other hand, have mixed feelings about Turing’s little foray into mathematical biology.... Turing was a mathematician, first and foremost, and his proposed mechanism is (by his own admission) a highly simplified and idealized take on a messy, complicated system.

Algorithms and their complexity often occur in critical parts of computer systems, but I find that few engineers have a good understanding of how a O(n!) algorithm compares to a O(n^5) one. In the coding contest world, competitors think about these tradeoffs all the time. No wonder, there's a set of numbers every algorithm designer should know. The table below shows the limits that can be reached in a few seconds by algorithms of different complexities, n being the input size. I've added some algorithms and data structure examples for each complexity class.

8: the weight, in pounds, of the head you'll bang against a desk while debugging code.

Earlier this month I posted my review of the TECK, an ergonomic keyboard with mechanical switches that’s looking to attract users interesting in a high quality, highly ergonomic offering and don’t mind the rather steep learning curve or the price. The TECK isn’t the only such keyboard, of course, and I decided to see what other mechanical switch ergonomic keyboards I could get for comparison. Next up on the list is the granddaddy of high-end ergonomic keyboards, the Kinesis Contour Advantage.

Ergo keyboards and trackballs are great for keeping people from using your computer, if nothing else.

In his March 16, 2013 opinion column on CNN.com, Bruce Schneier called the Internet a “surveillance state”. In the piece, Schneier complains that the Internet now serves as a platform which enables massive and pervasive surveillance by the state. State sponsored and ordained surveillance, however, is not synonymous with the Internet. Schneier’s use of the word ‘state’ is ill-advised, his goading conclusion thereby misses the mark.

It's a shame he didn't use the interwebs for niceness instead of evil.

Launching a new mobile OS is a difficult project since the market leaders, Android and iOS, have such a big lead. Even Microsoft, with its near-infinite financial resources and vast ecosystem of complementary products, has struggled to gain traction. And new entrants face a chicken-and-egg problem: developers don't want to write apps for a platform without many users, while users don't want to buy a phone without many apps. Mozilla, the non-profit foundation behind Firefox, believes it can tackle this dilemma.

Many veteran developers have learned their lesson and given up on iCloud’s Core Data syncing entirely. "Ultimately, when we looked at iCloud + Core Data for [our app], it was a total no-go as nothing would have worked," said one best-selling iPhone and Mac developer. "Some issues with iCloud Core Data are theoretically unsolvable (stemming from the fact that you’ve put an object model on top of a distributed data store) and others are just plain bugs in the implementation," he said. Syncing alternatives exist, but none of them live up to the goals iCloud set out to achieve nearly two years ago...

One of the guys who works on Windows Azure Mobile Services gave me a demo of its support for iOS. What? Microsoft supporting iOS? What? That isn’t the Microsoft (I thought) I knew. Once I got over the shock, I expected that I’d have to write code in C# (a Microsoft language), that services would run behind IIS (a Microsoft webserver), and that I’d have to use Visual Studio (a Microsoft developer tool) on Windows, which I don’t have. That would be typical Microsoft, right? Instead: The code is JavaScript, the webserver is Node.js, and I can write code in any text editor. No Microsoft things. The company even released some related code as open source and put it on GitHub.

At any given time the Windows operating system is tracking statistics for the system and many of the processes / applications that are currently running on it. Things like the number of processors, how many threads are executing, how often the CLR is in garbage collection, the number of I/O operations being performed etc are all tracked through things called performance counters.... Reading performance counters involves using the PerformanceCounter class which you can find in the System.Diagnostics namespace. It takes the category, the counter name and optionally an instance.

Let’s say you’re building your first API. Be it public, private, or some hybrid thereof, don’t be surprised if your first defect is date/time-related. Do not underestimate how much trouble you can get into when it comes to handling date and times. Here are some tips which might keep you out of this potential future.