Programming

The Sad Graph of Software Death (tinyletter.com) 210

An anonymous reader writes: Programmers, raise your hand if you've been on a project where bugs keep piling up, management doesn't dedicate time to fix them, and the whole thing eventually bogs down. Gregory Brown summarizes that situation in one simple little graph from an issue tracker, and discusses why so many companies have problems with it. "This figure tells a story that is no way surprising to anyone who has worked on software projects before: demand for fixes and features is rapidly outpacing the supply of development time invested, and so the issue tracker is no longer serving as any sort of meaningful project planning tool. In all but the most well-funded, high functioning, and sustainable businesses — you can expect some degree of tension along these lines. The business side of the house may blame developers for not moving fast enough, while the developers blame the business for piling work on too quickly and not leaving time for cleanup, testing, and long-term investments. Typically, both sides have valid concerns, but they don't do an especially good job of communicating with one another." What methods have helped you deal with situations like this? What methods haven't helped?
Programming

The Swift Programming Language's Most Commonly Rejected Changes (github.com) 339

An anonymous reader writes: When Apple made its Swift programming language open source in early December, it opened the floodgates for suggestions and requests from developers. But the project's maintainers have their own ideas about how the language should evolve, so some suggestions are rejected. Now a list has been compiled of some commonly rejected proposals — it's an interesting window into the development of a language. Swift's developers don't want to replace Brace Syntax with Python-style indentation. They don't want to change boolean operators from && and || to 'and' and 'or'. They don't want to rewrite the Swift compiler in Swift. They don't want to change certain keywords like 'continue' from their C precedents. And they have no interest in removing semicolons.
Programming

Scott Meyers Retires From Involvement With C++ (blogspot.com) 112

An anonymous reader writes: If you've studied C++ any time in the past 25 years, you've probably read something by Scott Meyers. He wrote Effective C++, regarded by many as one of the top two books for learning to work with the language. He also wrote similar books about changes in C++11 and C++14, as well as making good use of the Standard Template Library. He's been a seemingly endless source of instructional videos, articles, and helpful answers on Usenet and StackOverflow. Unfortunately for us, Meyers has now decided to move on. "25 years after publication of my first academic papers involving C++, I'm retiring from active involvement with the language. It's a good time for it. My job is explaining C++ and how to use it, but the C++ explanation biz is bustling. ... My voice is dropping out, but a great chorus will continue." Thanks for all the help, Scott.
Open Source

Open Source Roles: Starters vs. Maintainers (jlongster.com) 77

An anonymous reader writes: Mozilla developer James Long has posted a sort of internal monologue on the difficulties of being a hobbyist open source project maintainer. He says, "I hugely admire people who give so much time to OSS projects for free. I can't believe how much unpaid boring work is going on. It's really cool that people care so much about helping others and the community. ... There are two roles for any project: starters and maintainers. People may play both roles in their lives, but for some reason I've found that for a single project it's usually different people. Starters are good at taking a big step in a different direction, and maintainers are good at being dedicated to keeping the code alive.

I am definitely a starter. I tend to be interested in a lot of various things, instead of dedicating myself to a few concentrated areas. I've maintained libraries for years, but it's always a huge source of guilt and late Friday nights to catch up on a backlog of issues. ... Here's to all the maintainers out there. To all the people putting in tireless, thankless work behind-the-scenes to keep code alive, to write documentation, to cut releases, to register domain names, and everything else."

Programming

Coding Styles Survive Binary Compilation, Could Lead Investigators Back To Programmers (princeton.edu) 164

An anonymous reader writes: Researchers have created an algorithm that can accurately detect code written by different programmers (PDF), even if the code has been compiled into an executable binary. Because of open source coding repositories like GitHub, state agencies can build a database of all developers and their coding styles, and then easily compare the coding style used in "anti-establishment" software to detect the culprit. Despite all the privacy implications this research may have, the algorithm can also be used by security researchers to track down malware authors. We also discussed an earlier phase of this research.
Oracle

Oracle Asked To Help Low-Income Residents Evicted For Its New Cloud Campus (cio.com) 202

itwbennett writes: Roughly 100 low-income families were evicted from an apartment complex on the land in Austin, Texas where Oracle plans to build a new 560,000 sq. foot cloud-computing campus. Some of the former tenants of Lakeview Apartments had leases through the end of the year, but were reportedly forced by owner Cypress Real Estate Advisors to move out early. Some have said their security deposits were not returned, and they have had no assistance as they've struggled to find comparably priced housing. Last week, some of those residents gathered near the site of their former home to protest and to appeal to Oracle for assistance.
Oracle

Google Confirms Next Android Version Won't Use Oracle's Proprietary Java APIs 215

An anonymous reader writes: Google is ditching the Java application programming interfaces (APIs) in Android and moving to only OpenJDK. The news first came by a "mysterious Android codebase commit" from last month submitted to Hacker News. Google confirmed to VentureBeat that Android N will rely solely on OpenJDK. “As an open-source platform, Android is built upon the collaboration of the open-source community,” a Google spokesperson told VentureBeat. “In our upcoming release of Android, we plan to move Android’s Java language libraries to an OpenJDK-based approach, creating a common code base for developers to build apps and services. Google has long worked with and contributed to the OpenJDK community, and we look forward to making even more contributions to the OpenJDK project in the future.”
Data Storage

Tech Segments Facing Turbulence In 2016 (dice.com) 72

Nerval's Lobster writes: David Foote, an analyst who accurately predicted the tech industry's job growth in 2015, is back with some new predictions about which segments will do well in 2016 (Dice link). At the top of his list: DevOps, cloud and software architects, and cybersecurity experts. Those that won't perform well? SAP specialists, storage 'gurus,' and network managers could all face some headwinds. 'Companies are continuing to outsource infrastructure and that will reduce the need for network specialists except for network security which will remain in-house,' he says. Whether or not he's right about which parts of the tech industry will do better than others, there are also increasing signs that things could get very tight from a funding perspective for startups, as even the so-called 'unicorns' risk seeing investor money (and customers) dry up.
United States

US Dept. of Ed: English, History, and Civics Teachers Good Enough For CS Class 242

theodp writes: In A New Chapter for Computer Science Education, the U.S. Department of Education explained earlier this month that the federal STEM Education Act of 2015 'provides an unprecedented opportunity to fully leverage federal resources' to address large gaps in students' participation in Advanced Placement (AP) computer science classes based on gender and race. "In three states," lamented the DOE, "not a single female student took the AP computer science exam" (that only 8 boys took the AP CS exam in those same 3 states was apparently not a concern). And the DOE has good news for those hoping to tap Title I and II funds for CS, but don't have any computer science teachers. "A background in math or science isn't necessarily a requirement to teach CS," explains the Dept. of Ed, "as disciplines like English, history and civics can also provide a solid foundation for teaching CS concepts."
Programming

Can Web Standards Make Mobile Apps Obsolete? (arstechnica.com) 225

nerdyalien writes: There's a litany of problems with apps. There is the platform lock-in and the space the apps take up on the device. Updating apps is a pain that users often ignore, leaving broken or vulnerable versions in use long after they've been allegedly patched. Apps are also a lot of work for developers—it's not easy to write native apps to run on both Android and iOS, never mind considering Windows Phone and BlackBerry. What's the alternative? Well, perhaps the best answer is to go back to the future and do what we do on desktop computers: use the Web and the Web browser.
Bug

Fixing JavaScript's Broken Random Number Generator (hackaday.com) 136

szczys writes: It is surprising to learn how broken the JavaScript Random Number Generator has been for the past six years. The problem is compounded by the fact that Node.js uses the same broken Math.random() module. Learning about why this is broken is interesting, but perhaps even more interesting is how the bad code got there in the first place. It seems that a forum thread from way back in 1999 shared two versions of the code. If you read to the end of the thread you got the working version, if you didn't make it that far (perhaps the case with JavaScript devs) you got the bad version of the code whose fix is just now being rolled out.
Bitcoin

Core Bitcoin Devs Leave Project, Create New Currency Called Decred (softpedia.com) 122

An anonymous reader writes: Core developers in the Bitcoin project have left and started a new currency called Decred. Developers are citing a lack of transparency and a conflict of interests between the group that funds the actual Bitcoin software development, and the decisions taken inside the project. Jacob Yocom-Piatt, CEO at Company 0, who has funded development of Bitcoin since early 2013: "This is in part due to a lack of mechanisms and pathways for funding development work directly from the community, and as a result Bitcoin development is funded by external entities that create conflicts of interest between the developers and the representative power of the community that uses Bitcoin."
Perl

Perl 6 Released (wordpress.com) 145

Earlier this month, we noted the Perl 6 advent calendar. Now, an anonymous reader writes to note that, right on schedule, and after 15 years of work, Perl 6 has been released. The top two bullet points in the linked description say that the newest Perl "retains the core values of Perl: expressiveness, getting the job done, taking influences from natural language, and pushing the boundaries of language design," and that is "has clean, modern syntax, rooted in familiar constructs but revisiting and revising the things that needed it." However, while it's nice to see Perl 6 reach official release, the team behind it takes pains to note that work goes on: "We will continue to ship monthly releases, which will continue to improve performance and our user’s experience." Further, "[T]his Rakudo release is not considered the primary deliverable for this Christmas; it is the language specification, known as “roast” (Repository Of All Spec Tests), that is considered the primary deliverable."
Ruby

Ruby 2.3.0 Released (ruby-lang.org) 45

An anonymous reader writes: Ruby developers have announced the official release of Ruby 2.3.0. This release introduces a frozen string literal pragma, which is "a new magic comment and command line option to freeze all string literals in the source files." It also adds a safe navigation operator &. similar to what exists in C#, Groovy, and Swift. Ruby 2.3.0 also has many performance improvements. For more details, see the news file and the full changelog.
Social Networks

Ask Slashdot: Best Practices For Using a Reputation Engine To Rate Information? 100

GrantRobertson writes: For my graduate project, I am considering developing a web engine designed around sharing and organizing actual information in a way that people would actually like to and easily be able to use it. Unlike a wiki, the information will be much more granular with lots more metadata and organization. Unlike a web forum, the information will be be organized rather than dispersed throughout thousands of random posts, with little room for dominant personalities to take over. While I like Stack Overflow, I am planning far more structure. While I enjoy the entertaining tangents on Slashdot, I don't want those to take over sites created using my engine. Naturally, there must be some way to prevent armies of bots or just legions of jerks from derailing web sites created using this engine. Given that, what would you say are some good rules to include in the reputation engine for such a site. What kinds of algorithms have you found to be most beneficial to the propagation and spread of actual knowledge. What would you like to see and what have you found to be dismal failures?
Programming

Did Google and the Hour of Code Get "Left" and "Right" Wrong? 107

theodp writes: Command the dancers to "point left" in Google's dance-themed Code Boogie learn-to-code tutorial on the Santa Tracker website, and the dancers actually point to their own right. The lesson seems to reinforce a common mistake made by younger children learning to code in LOGO, which is to use their own or the display screen's frame of reference rather than the turtle's frame of reference. "These misconceptions," explained Richard E. Mayer, "may be due to the knowledge that the child brings with him or her to the programming environment. For example, children who possess an egocentric conception of space (Piaget & Inhelder, 1956) would fail to recognize that when the turtle is at a 180-degree orientation, its right corresponds to the child's left." So, it should probably be asked if the learn-to-code tutorials from Lucasfilm, Code.org, and Google that are being used to teach the world's K-12 schoolchildren to code might be making the same mistake as 4-7 year-olds. In this year's flagship flagship Lucasfilm/Code.org Star Wars Hour of Code tutorial, for example, command the droid BB-8 to move left and it could move to either its own left or right depending on what direction it's pointed in. So, did the "Largest Learning Event in History" also get "left" and "right" wrong?
Programming

College Board Mainstreams AP Computer Science (collegeboard.org) 69

New submitter Pollux writes: In the Fall of 2016, the College Board will begin a new course titled "AP Computer Science Principles," designed to "introduce students to the central ideas of computer science, instilling the ideas and practices of computational thinking and inviting students to understand how computing changes the world." This course will not replace the existing "AP Computer Science A" course, but has been added, "To appeal to a broader audience, including those often underrepresented in computing." A short list of differences between the two courses notes that instructors can choose a language of their choice. The curriculum framework directs the focus of instruction away from programming as a skill and towards programming as an activity, "enabling problem solving, human expression, and creation of knowledge (PDF)."
Businesses

US Bureau of Labor Statistics: Programmer Jobs Will Decline 8% (computerworld.com) 349

theodp writes: Two weeks ago, as the nation's schools 'taught kids to program' with an Hour of Code, Microsoft and others celebrated a 6-year lobbying effort that culminated in the passage of legislation that made Computer Science a core K-12 subject, which the software giant said "will advance some of the goals outlined in Microsoft's National Talent Strategy." But on Tuesday, Computerworld reported that the U.S. Bureau of Labor Statistics has put somewhat of a buzzkill on the learn-to-code party, saying IT jobs will grow 12% over the next decade, although computer programmers will see an 8% decline. "Computer programming can be done from anywhere in the world, so companies sometimes hire programmers in countries where wages are lower," explained the government. The silver lining is that software developers, the largest occupational group in IT, will increase by 17% or 186,600, over this period. The nomenclature here is a little muddy, since "programmers" and "software developers" are often used interchangeably. Here's how they're distinguished in this article: "Programmers are focused on coding and implementing requirements, and that’s why they may be more susceptible to offshoring, in contrast to software developers who may be more engaged with the business, analyzing needs and collaborating with multiple parties."
Bug

HIV Dating Company Accuses Researchers of Hacking Database (csoonline.com) 71

itwbennett writes: Slashdot readers will recall the story posted last week about the misconfiguration of the MongoDB database that powers Hzone, a dating app for the HIV-positive, and the ensuing threat of HIV infection the company hurled at DataBreaches.net, who sent the notification. (Hzone later apologized.) But that's not the end of the story. Among other twists and turns that point to a CEO who was in way over his head, in several emails to Dissent, the admin of DataBreaches.net, Hzone CEO Justin Robert accused Dissent of changing the Hzone user database. But follow-up emails suggest that the company couldn't tell what was accessed or when, as Robert says Hzone doesn't have 'a strong tech team to maintain the site.'
Oracle

Oracle Settles FTC Charges Regarding Deceptive Java Security Updates (ftc.gov) 33

An anonymous reader writes: The FTC and Oracle have come to an agreement regarding Oracle's deceptive Java security updates, which only removed recent versions of vulnerable Java SE, but left behind older, insecure versions. Oracle got away without a fine, but will have to overhaul its Java update process to remove older versions as well.

Slashdot Top Deals