Programming

Use Code From Stack Overflow? You Must Provide Attribution (stackexchange.com) 303

An anonymous reader writes: Have you ever used Stack Overflow to answer a question about some code you're working on? Most people who write code on a regular basis have done so, and this sometimes involves copying code snippets. Well, starting on March 1, copying code from Stack Overflow will require you to attribute that code. Code published by contributors to SO will be covered by the MIT license. Users copying that code don't have to include the full license in their code, as it usually requires, but they do have to provide a URL as a comment in their code, or some similar level of attribution. This change applies to other sites in the Stack Exchange network, as well.

The SO community is widely criticizing the change, citing problems with the decision-making process that led to it and complications that may arise from mandating attribution. Why did SO make the change in the first place? They say "it's always been a little ambiguous how CC-BY-SA covers code. This has led to uncertainty among conscientious developers as they've struggled to understand what (if anything) the license requires of them when grabbing a few lines of code from a post on Stack Exchange. Uncertainty is a drag on productivity, for you and for us, and we feel obligated to make code use more clear."

Programming

The Best Ways To Simplify Your Code? (dice.com) 197

Nerval's Lobster writes: Technical debt arises for many reasons—whether moving goal posts, pressure to get code tested and released, high programmer turnover, and lack of documentation. Over time, it can also render code a spaghetti-like mess. But how to deal with it? In a new column on Dice, developer David Bolton offers some suggestions, ranging from refactoring to using compiler inference to increase readability and shorten declarations. While those techniques are straightforward, it's clear that a lot of developers let their code get out of control, and trying to plan beforehand doesn't necessarily prevent the work from getting overcomplicated. It seems like every developer has a go-to technique (or four) for keeping things a little more streamlined. What are yours?
Microsoft

Microsoft Open Sources Edge JavaScript Code, Plans Linux Port (windows.com) 92

colinneagle writes: One month after promising to release the JavaScript engine of its Edge browser, Microsoft has proven good for its word and then some. Not only is it releasing the code, it's planning a Linux port. The company uploaded the code to GitHub and announced its plans via a blog post by Gaurav Seth, principal PM manager for Chakra, which is what they're calling the JavaScript engine. "Today, we are excited to share with you that we've just made the sources for ChakraCore available under the MIT License at the ChakraCore GitHub repository," he wrote. "Going forward, we'll be developing the key components of Chakra in the open." With the release, you can build ChakraCore on Windows 7 SP1 or above with Visual Studio 2013 or 2015 with C++ support installed, Seth said. Of course, Edge is more than just the Chakra engine, but this could result in a back port to Windows 7. He also said Microsoft is committed to bringing it to other platforms, starting with Linux, and invited developers to "help us in the pursuit either by letting us know which other platforms they'd like to see ChakraCore supported on, or even by helping port it to the platform of their choice."
Databases

PostgreSQL 9.5 Does UPSERT Right (thenewstack.io) 105

joabj writes: For years, PostgreSQL users would ask when their favorite open source database system would get the UPSERT operator, which can either insert an entry or update it if a previous version already existed. Other RDMS have long offered this feature. Bruce Momjian, one of the chief contributors to PostgreSQL, admits to being embarrassed that it wasn't supported. Well, PostgreSQL 9.5, now generally available, finally offers a version of UPSERT and users may be glad the dev team took their time with it. Implementations of UPSERT on other database systems were "handled very badly," sometimes leading to unexpected error messages Momjian said. Turns out it is very difficult to implement on multi-user systems. "What is nice about our implementation is that it never generates an unexpected error. You can have multiple people doing this, and there is very little performance impact," Momjian said. Because it can work on multiple tables at once, it can even be used to merge one table into another.
Debian

How To Talk About Mental Illness Online? 308

An anonymous reader writes: Shortly after the death of Debian founder Ian Murdock, Bruce Perens, who succeeded Murdock as Debian Project Leader in 1996 and was also Murdock's employer for a period of time, claimed very publicly that Murdock died of mental illness, although no evidence has been provided. Without referencing Murdock or Perens, another prominent Debian Developer, Daniel Pocock, has asserted that discussion about who has or had a mental illness is a step too far. To be fair, it sure doesn't sound like Perens was trying to do other than express sympathy in light of a tragic death.
Google

Google Claims a TOS Violation On RouteBuilder For Using the Map API (medium.com) 130

New submitter acm writes: RouteBuilder has been using the Google Maps API to help people share their routes (bicycling, hiking, etc) for a decade. Last week, Google sent an email demanding Routebuilder stop using the API: "In particular,your application violates clause 10.4(c), which does not allow developers to create a wrapper — an application that re-implements or duplicates the Google Maps website or mobile app, or any of the Google Maps APIs." Why did it take the Google Maps Team 10 years to decide they don't want pedometer-type sites to use their API?
Security

GM's New Bug Bounty Program Lacks One Thing: A Bounty (securityledger.com) 47

chicksdaddy writes with this news: General Motors (GM) has become the latest "old economy" firm to launch a program to entice white hat hackers and other experts to delve into the inner workings of its products in search of security flaws, The Security Ledger reports. "The company launched a bug bounty on January 5th on the web site of Hackerone (https://hackerone.com/gm), a firm that manages bounty programs on top of other firms, promising "eternal glory" to security experts who relay information on "security vulnerabilities of General Motors products and services." Despite a $47 billion market capitalization, however, GM is not offering monetary rewards – at least not yet. A page on Hackerone detailing how vulnerability reporters will be thanked reads "Be the first to receive eternal glory," but does not spell out exactly what rewards are proffered. Judging from the description of the program, the "prize" for reporting a vulnerability to GM appears to be a promise by GM not to sue you for finding it." However, the article notes that the program has garnered praise from security researchers Chris Valasek and Charlie Miller, monetary reward or not.
GNU is Not Unix

The FSF Is 30 Years Old; Where Should They Go From Here? (fsf.org) 231

An anonymous reader writes: The Free Software Foundation is conducting a survey to gather feedback on where they should be focusing their efforts over the next five years. Should they concentrate on IP issues, UX issues, or something else? Is their stance on Free Software versus Open Source a battle that's already lost, and should they compromise? What do users think an ideal world would look like in 2020? And how miserable could things get? Without the FSF (and GNU), today's computing landscape would sure look a lot different.
Programming

ESP8266 Basic Interpreter Lowers IoT Entry Bar For Amateur Programmers (esp8266basic.com) 112

New submitter mmiscool writes: ESP8266 Basic is a project less than 6 moths old. It is open source and designed specifically for the internet of things. The ESP8266 microcontroller costs less than $3, and once the basic firmware is loaded to the device a user can connect to it using Wi-Fi and start programming right inside their web browser. No wires, no software or plugins to install. Just a simple text editor. There is now a community, primarily older folks who fell in love with Basic on the Commodore, who are using it for controlling a variety of projects. The code is amazingly simple and includes commands for interfacing with neo pixels, OLED displays, Temperature sensors, hobby servo motors and of course the blinky LED. It also provides commands for browser widgets that can be used to construct interfaces for the device like textboxes, buttons, sliders and dropdowns. The bottom line is that Basic is not dead, and has finally made its way into the internet of things. Make last year ran a three-part series on the chip (here's part one), but things have advanced quite a bit since then, when people were first noticing that the ESP8266 is more powerful than the tasks for which it was first marketed.
Oracle

Oracle Brings Real-Time Kernel Patching To Oracle Enterprise Linux 52

prisoninmate writes: Oracle's Unbreakable Enterprise Kernel (UEK) Release 4 is an important engineering effort and introduces performance improvements and enhancements for some of the most essential components, including CPU schedulers and Automatic NUMA Balancing, along with powerful new features, such as real-time kernel patching, which is possible thanks to the Ksplice open-source extension of the Linux kernel 4 branch, which lets users to apply patches to the running kernel without the need to reboot the system, thus improving security and simplify the management of cloud infrastructures.
Databases

Oracle Named Database of the Year, MongoDB Comes In Second (softpedia.com) 122

An anonymous reader writes: Oracle's database management system has seen the biggest rise in terms of popularity in the past year. Oracle didn't only see a rise in the number of deployed instances, job offerings and mentions on LinkedIn profiles, but for the first time also became a popular topic on Twitter and a constant mention on StackOverflow, a popular Q&A support forum for developers. Second on DB-Engine's popularity list was MongoDB, which barely missed winning the DBMS of the Year award for the third time in a row.
Education

K12CS.org: Microsoft, Google, Apple Identifying What 1st Graders Should Know 145

theodp writes: On Sunday, The Simpsons declared computer coding class the nation's latest educational fad (script). Proving Principal Skinner's point, K12CS.org on Thursday announced a New Framework to Define K-12 Computer Science Education, the collaboration of participants from a number of states (MD, CA, IN, IA, AR, UT, ID, NE, GA, WA), large school districts (NYC, Chicago, San Francisco), technology companies (Microsoft, Google, Apple), organizations (Code.org, ACM, CSTA, ISTE, MassCAN, CSNYC), and individuals (higher ed faculty, researchers, K-12 teachers, and administrators). "A steering committee initially comprised of the Computer Science Teachers Association, the Association for Computing Machinery, and [tech bankrolled and led] Code.org will oversee this project," explained a CSTA blog post. "Funding for the project will be provided by Code.org and the ACM. The framework will identify key K-12 computer science concepts and practices we expect students exiting grades 2, 5, 8, and 12 to know."

In a FAQ, K12CS.org envisions a Programming and Algorithms standard for 1st Graders that calls for the 5-year-olds to "Work collaboratively in clear roles (e.g., pair programming) to construct a problem solution of a sequence of block-based programming commands." A day before the announcement, Politico reported that K-12 CS education is expected to get a State of the Union mention this year, and that the White House and U.S. Dept. of Education have been trolling for CS success stories in conjunction with the announcement of a broad set of new commitments to CS Education in early 2016.
Java

Java Named Top Programming Language of 2015 (dice.com) 358

Nerval's Lobster writes: What was the most popular programming language of 2015? According to the people behind the TIOBE Index, Java took that coveted spot, winning out over C, Python, PHP, and other languages. "At first sight, it might seem surprising that an old language like Java wins this award," read TIOBE's note accompanying the list. "Especially if you take into consideration that Java won the same award exactly 10 years ago." Yet Java remains essential not only for businesses, it continued, but also consumer-centric markets such as mobile development (i.e., Google Android). That being said, even big languages can tumble. (Dice link) Objective-C tumbled from third place to 18th in the past 12 months, thanks to Apple's decision to replace it with Swift. In 2016, TIOBE expects that "Java, PHP (with the new 7 release), JavaScript and Swift will be the top 10 winners for 2016. Scala might gain a permanent top 20 position, whereas Rust, Clojure, Julia and TypeScript will also move up considerably in the chart." What has been your most-used (or best-loved) programming language of the last 12 months?
Databases

PostgreSQL 9.5 Released 104

iamvego writes: Later than the typical release cadence, PostgreSQL 9.5 has finally been released, and brings with it a slew of new features including UPSERT functionality, row-level security, and some big data features (CUBE/ROLLUP, join pushdown for foreign data wrappers, TABLESAMPLE, BRIN indexing and more). The previous release had brought about some new JSON functions and operators, but they only queried the data; 9.5 comes with new operators which now allow modification of JSON values, so it no longer has to be manipulated outside of the database. PostgreSQL's wiki has a more detailed overview of the new features.
Facebook

Facebook Hands Out Secret Chat SDK For Virtual Messenger Bots (thestack.com) 17

An anonymous reader writes: Facebook has started giving third-party developers unannounced access to a new development tools kit which allows them to build their own Messenger bots. The Chat Software Development Kit (SDK) enables developers to create interactive experiences and virtual chat bots which can automatically respond to users, delivering information, location services, returning images and even managing payments. Facebook has not yet publicised any details of the documentation for the SDK, instead sharing it secretly with select developers via PDF.
Programming

The Unsung Heroes of Scientific Software (nature.com) 62

An anonymous reader sends this news from Nature: For researchers who code, academic norms for tracking the value of their work seem grossly unfair. They can spend hours contributing to software that underpins research, but if that work does not result in the authorship of a research paper and accompanying citations, there is little way to measure its impact. ... Enter Depsy, a free website launched in November 2015 that aims to "measure the value of software that powers science."

[Postdoc researcher Klaus] Schliep's profile on that site shows that he has contributed in part to seven software packages, and that he shares 34% of the credit for phangorn. Those packages have together received more than 2,600 downloads, have been cited in 89 open-access research papers and have been heavily recycled for use in other software — putting Schliep in the 99th percentile of all coders on the site by impact.


Check out free open source science software on SourceForge.
Firefox

Firefox Will Support Non-Standard CSS For WebKit Compatibility (theregister.co.uk) 132

RoccamOccam writes: Mozilla developers have discussed a plan to implement support for a subset of non-standard CSS prefixes used in WebKit. Mozilla developer Daniel Holbert says: "A good chunk of the web today (and particularly the mobile web) effectively relies on -webkit prefixed CSS properties & features. We wish we lived in a world where web content always included standards-based fallback (or at least multiple-vendor-prefixed fallback), but alas, we do not live in that world. To be successful at rendering the web as it exists, we need to add support for a list of frequently-used -webkit prefixed CSS properties & features."
Programming

Overcoming Intuition In Programming (amasad.me) 237

An anonymous reader writes: Amjad Masad, a programmer who works at Facebook, has put up a post about intuition and programming. It's based on a series of experiments (PDF) into how the presentation of a problem affects the learning involved in solving it. Researchers found that if they made a test deliberately hard to understand, those taking the test would exhibit greater understanding after solving it than those who were presented with a more intuitive wording of the same problem. Masad discusses how the research applies to software engineering: "Programming is an intellectually challenging task, but luckily we invent tools to make it manageable. I find that up to a certain point, the intuitive and easy properties of a given language, framework, or library might start to have negative effects.

From personal experience and from mentoring beginners I noticed that when using tools that allow us to reason within our intuition, anytime we're faced with some difficulty we feel that we've done something wrong. And although we might have the necessary skills to overcome the difficulty, we often start questioning and revising our work." He concludes, "Code reuse, libraries, sharing, and open-source are very important to software engineering, but we should be careful to not enable the belief that programming should be as easy as gluing things together."

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.

Slashdot Top Deals