Public

664 bookmarks
Custom sorting
Software Engineering for Machine Learning: A Case Study
Software Engineering for Machine Learning: A Case Study
Abstract—Recent advances in machine learning have stimulated widespread interest within the Information Technology sector on integrating AI capabilities into software and services. This goal has forced organizations to evolve their development processes. We report on a study that we conducted on observing software teams at Microsoft as they develop AI-based applications. We consider a nine-stage workflow process informed by prior experiences developing AI applications (e.g., search and NLP) and data science tools (e.g. application diagnostics and bug reporting). We found that various Microsoft teams have united this workflow into preexisting, well-evolved, Agile-like software engineering processes, providing insights about several essential engineering challenges that organizations may face in creating large-scale AI solutions for the marketplace. We collected some best practices from Microsoft teams to address these challenges. In addition, we have identified three aspects of the AI domain that make it fundamentally different from prior software application domains: 1) discovering, managing, and versioning the data needed for machine learning applications is much more complex and difficult than other types of software engineering, 2) model customization and model reuse require very different skills than are typically found in software teams, and 3) AI components are more difficult to handle as distinct modules than traditional software components — models may be “entangled” in complex ways and experience non-monotonic error behavior. We believe that the lessons learned by Microsoft teams will be valuable to other organizations.
·microsoft.com·
Software Engineering for Machine Learning: A Case Study
Loopy
Loopy
Neat site that can be used to investigate and demonstrate the relationship of things in a sort of feedback loop approach.
·ncase.me·
Loopy
www.pythonanywhere.com
www.pythonanywhere.com
This could be useful for hosting of personal apps, or at least for experimenting with Python Web applications.
·pythonanywhere.com·
www.pythonanywhere.com
What happens when software developers are (un)happy | Elsevier Enhanced Reader
What happens when software developers are (un)happy | Elsevier Enhanced Reader
The growing literature on affect among software developers mostly reports on the linkage between happiness, software quality, and developer productivity. Understanding happiness and unhappiness in all its components – positive and negative emotions and moods – is an attractive and important endeavor. Scholars in industrial and organizational psychology have suggested that understanding happiness and unhappiness could lead to cost-effective ways of enhancing working conditions, job performance, and to limiting the occurrence of psychological disorders. Our comprehension of the consequences of (un)happiness among developers is still too shallow, being mainly expressed in terms of development productivity and software quality. In this paper, we study what happens when developers are happy and unhappy while developing software. Qualitative data analysis of responses given by 317 questionnaire participants identified 42 consequences of unhappiness and 32 of happiness. We found consequences of happiness and unhappiness that are beneficial and detrimental for developers’ mental well-being, the software development process, and the produced artifacts. Our classification scheme, available as open data enables new happiness research opportunities of cause-effect type, and it can act as a guideline for practitioners for identifying damaging effects of unhappiness and for fostering happiness on the job.
·reader.elsevier.com·
What happens when software developers are (un)happy | Elsevier Enhanced Reader
Mezzano
Mezzano
Operating system written in Common Lisp. Even runs DooM and Quake!
·github.com·
Mezzano
The Pitfalls of Boolean Trap
The Pitfalls of Boolean Trap

Good little article about the pitfalls of using boolean values as parameters for a function. Not the first time I've seen this sort of thing (I'm sure I read a similar article years before, and a similar thing in a coding book even earlier).

Still good advice.

At least it's a little better in languages with keyword arguments.

·ariya.io·
The Pitfalls of Boolean Trap