Like most software, a good portion of the code will be exercised after having run the application sufficiently. However, like all software, there always exists those edge cases in which the planets must align for a certain subroutine/method to be executed/invoked, It’s these rarely executed pieces of code that suffer from poor test coverage and to which coverage analysis tools lend themselves the most. His piece is a good read to get a feel for how to code and test so that more of your code is exercised and that your QA correctly tests all of the code, instead of just the 70-80% that gets executed the majority of the time.
An anonymous reader writes:`
Hello Games is a small development studio, only employing 10 people. But they’re building a game, No Man’s Sky, that’s enormous — effectively infinite.
Its universe is procedurally generated, from the star systems down to individual
species of plant and animal life. The engine running the game is impressively
optimized. A planet’s characteristics are not computed ahead of time — terrain
and lifeforms are randomly generated on the fly as a player explores it. But, of
course, that created a problem for the developers — how do they know their
procedural generation algorithms don’t create ridiculous life forms or
geological formations? They solved that by writing AI bot software that
explores the universe and captures brief videos, which are then converted to GIF
format and posted on a feed the developers can review. The article goes into a
bit more detail on how the procedural generation works, and how such a small
studio can build such a big game.
‘This software and related documentation are provided under a license agreement containing restrictions on use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is prohibited.’
Physicists have resurrected a particle that may have existed in the first hot moments after the Big Bang. Arcanely called Zc(3900), it is the first confirmed particle made of four quarks, the building blocks of much of the Universe’s matter (abstract one, abstract two). Until now, observed particles made of quarks have contained only three quarks (such as protons and neutrons) or two quarks (such as the pions and kaons found in cosmic rays).
Switch Fringe is a relatively new not-for-profit annual music and arts festival in the UK town of Ipswich, and this year’s program features a full page map of the town with details about each venue. Unlike most other maps this one is in the form of a Zelda level. This is in part due to this year’s theme ‘Re-imagining Ipswich,’ that PixelH8 is coming out of semi-retirement to play a gig during the proceedings and possibly due to the fact that the map’s designer — The Decibel Kid — spent too much time playing Zelda on a Gameboy Color during the first Web bubble.
On Tuesday, April 23rd, 2013, SkySQL signed a Merger Agreement with Monty Program Ab, creators of MariaDB. You can read more about the merger, as well as the cooperation with the MariaDB Foundation by checking out their Press Release, here.
The following is an exert from Mark Fisher ‘s great introduction to the Spring Integration project:
"Yesterday morning I presented a 2-part session at The Spring Experience entitled "Enterprise Integration Patterns with Spring". The first presentation included an overview of core Spring support for enterprise integration – including JMS, remoting, JMX, scheduling, and email. That presentation also included a high-level discussion of several of the Enterprise Integration Patterns introduced in the book of the same name by Gregor Hohpe and Bobby Woolf. In the second presentation, I officially unveiled "Spring Integration" – a new addition to the Spring portfolio. Spring Integration builds upon Spring’s core support while providing a higher level of abstraction largely inspired by those patterns. Here I would like to provide a brief overview of the topics I discussed in that session."
The Linux Foundation’s UEFI secure boot pre-bootloader is still in the works, and has been modified substantially so that it allows any Linux version to boot through UEFI secure boot. The reason for modifying the pre-bootloader was that the current version of the loader wouldn’t work with Gummiboot, which was designed to boot kernels using BootServices->LoadImage(). Further, the original pre-bootloader had been written using ‘PE/Coff link loading to defeat the secure boot checks.’ As it stands, anything run by the original pre-bootloader must also be link-loaded to defeat secure boot, and Gummiboot, which is not a link-loader, didn’t work in this scenario. This is the reason a re-write of the pre-bootloader was required and now it supports booting of all versions of Linux.
Also in UEFI news: Linus Torvalds announced today that the flaw which was bricking some Samsung laptops if booted into Linux has been dealt with.
Users of @Configuration classes and Spring’s support for subclass proxies (proxy-target-class=true), please take note: it is now no longer necessary to add CGLIB as an explicit dependency to work with these features. As of 3.2 M2, we have upgraded to the new CGLIB 3.0. We repackage all net.sf.cglib classes to org.springframework.cglib and inline them directly within the spring-core JAR. This means that all @Configuration and subclass proxying functionality works out of the box in M2, and means no potential for CGLIB conflicts with other projects. Likewise, we have upgraded to the new ASM 4.0, which we continue to repackage and inline as we have done for quite some time now. Note however that we’ve eliminated the dedicated spring-asm jar in M2 in favor of including org.springframework.asm classes directly in spring-core. Both of these upgrades are good news for JDK7 users writing Spring components in dynamic JVM languages, as these new versions of CGLIB and ASM properly handle the new invokedynamic bytecode instruction introduced in JDK7.
“Bjarne Stroustrup discusses the latest version of C++, which, although not a major overhaul, offers many small upgrades to appeal to different areas of development. From the interview: ‘I like the way move semantics will simplify the way we return large data structures from functions and improve the performance of standard-library types, such as string and vector. People in high-performance areas will appreciate the massive increase in the power of constant expressions (constexpr). Users of the standard library (and some GUI libraries) will probably find lambda expressions the most prominent feature. Everybody will use smaller new features, such as auto (deduce a variables type from its initializer) and the range-for loop, to simplify code.'”
I’ve decided to try to get realcoders.org going again *before* finishing a re-write completely in Java/Spring/Etc (as I’m starting to think that with work, etc. it will take me way too long, given the amount of “free time” that I currently have (and have had for the past few years now…))
This is simply a “welcome” post, and there will be more to come shortly. I am also going to be working on the visual appearance, as this is a fairly basic (on purpose) “template” that I opted to go with, as it’s fixed width, etc. and should be *great* for code snippets, et al. However, if anyone comes across something that either doesn’t display correctly on/in your browser, or on your operating system, please feel free and drop me an email or post a comment, etc. so that I am aware of it and can hopefully take care of it as soon as possible. I’ll do my best however to ensure cross-browser compatibility as well as supporting links(1)/lynx(1) as well if at all possible.
Again, go ahead and subscribe to the RSS feed(s), feel free to share links on Facebook, etc. all I ask is that you please bear with me while I’m getting things up and “running” a bit more along the lines of what realcoders.org is supposed to be and look like, etc. This will mean quite a bit of customization, and I’m not exactly sure how to accomplish some of the tasks under WordPress as of yet, but, I will figure it out as I come across the issues and I’m sure I’ll knock out the code one way or another =]
Thanks for all of your support! If anyone is interested in being either a regular or a one-time (or once in while) contributor, please drop me a line and we’ll talk about setting you up the appropriate account type, etc.
Some have argued that being a framework, it should have been written in C++ rather than C, and that’s is essentially nothing more than a bunch of libraries and APIs… However, others point to the fact that, since it’s meant to run on microcontrollers (with only kilobytes of RAM), C is still the best choice for it’s smaller compiled footprint, as OO is still more of a luxury when it comes to embedded programming, etc…