terça-feira, 13 de março de 2018

Metrics: Three metrics for measuring engineering speed (company / team velocity)

Three metrics for measuring engineering speed - SD Times

Quoting:
"Companies want to deliver high quality software fast, but how fast is fast enough? A recently released report by CircleCI found three important development metrics to predict an organization’s velocity and maturity.
The metrics are:

  • mainline branch stability, 
  • deploy time and 
  • deploy frequency.


“Most teams have no idea what speed actually means,” said Jim Rose, CEO of CircleCI. “They are deploying and they are doing it at a rate that feels good to them, but they don’t necessarily know where that stacks up compared to the rest of the market.”

The study looked at a sample of organizations built on the CircleCI’s cloud platform from June 1 to July 31, 2017."

segunda-feira, 12 de março de 2018

SW Development: Visual Studio vs. Rider (IDE, TOOLS)

An article by the great and not late Mr. Peres (which you might have heard about before):
https://stackify.com/visual-studio-rider/
Citando:
"In the beginning there was Visual Studio. For many years, it was essentially the only tool that offered a comprehensive IDE with useful functionality that could be used for enterprise-level .NET development. Other tools existed, of course, but they were generally no match for Visual Studio.
In recent years, this landscape has somewhat changed: we now have Visual Studio Code, MonoDevelop, SharpDevelop and, more recently, JetBrains Rider. Not all of these are free or open source, and, in general, this shows up in the quality of the tool or the features it offers. This is not to say that open source does not offer high quality stuff – I have been an advocate of NHibernate for years – but only that companies that can spend money in having full time developers working on something usually benefit from that."

quarta-feira, 7 de março de 2018

AI: Machine Learning course (Google)

https://developers.googleblog.com/2018/03/machine-learning-crash-course.html

Citando:
"Today, we're happy to share our Machine Learning Crash Course (MLCC) with the world. MLCC is one of the most popular courses created for Google engineers. Our engineering education team has delivered this course to more than 18,000 Googlers, and now you can take it too! The course develops intuition around fundamental machine learning concepts.

What does the course cover?

MLCC covers many machine learning fundamentals, starting with loss and gradient descent, then building through classification models and neural nets. The programming exercises introduce TensorFlow. You'll watch brief videos from Google machine learning experts, read short text lessons, and play with educational gadgets devised by instructional designers and engineers.

How much does it cost?

MLCC is free."


PS: Kudos to C.Manta for pointing this out.

SECURITY: The visible face of your projects could be the wrong one

Customer are always important but some customers and its projects will need additional care. Sometimes the visible face of your work gets into the news and this is good. Unless the news are bad, or even worse, are incorrect.

Only then you'll probably be aware that sometimes it is just not a matter of being the best in business and let your technical (and management) competency excel.
It's a matter of surviving what it is being said about your work, the way you got your contract, the way you delivered your work, the way you could get the blame for issues that are not part of the scope of your work and so on. It's then that you'll have to have your executive management support (to shield you from the outer world interferences and to manage communication with that outer world).

The oddest experience I've ever had was having to work with a point of contact that was to help us execute a specific project and from minute one his intentions were to undermine the project's success. I had 20+ years of experience in the software industry, and in my innocence, I was thinking I had nothing more to learn. I was so wrong,

What if the visible face of your project start to be in the news? The news could be correct and/or incorrect; presenting sensitive data and/or confidential data (that no one knows who's disclosing). Your competition could be interested in it. Internal stakeholders could be interested in it (feeling "invaded"). Reporters could be getting it all wrong. It can get messy...

Some examples (in PT, sorry guys):
Maybe some more can be told on this topics later on. Lessons learned are for sure more useful if properly shared. And you bet that we've managed to deliver successfully that particular [migration] project.

Revisions: 2018-03 - updated links. 2018-04 - added the "drop money out of the window" link.
PS: Additional info or how to not execute a "data migration" project:



domingo, 4 de março de 2018

SW Development: Single source of truth?

Recommendations on building the SSoT (alongside with DevOps and Agile approaches) for businesses like Financial Services (FS):
https://www.finextra.com/blogposting/15068/how-and-why-software-development-must-be-included-in-fs-compliance-risk-and-security-processes
Quoting:
"The problem is that traditionally, the way software development teams have worked has typically been siloed from the rest of the business.  So, the transparency that banks and other financial institutions need is not inherent in software development.
Plus, visibility and traceability of digital assets is being made more difficult because of the escalating complexity of applications and systems, multiple operating platforms and end points, plus a wider variety of file types -  often larger whether individually or in total volume – and incorporation of emerging technologies.     
This makes it difficult to comply with regulatory demands, because the audit trail – for example, when a piece of code was created or changed, by whom, when, where and how – is difficult to unearth, if challenged.  This is exacerbated by the fact that many financial products have to be maintained for years, if not decades, because of legacy customers.  Plus, should a problem become apparent later, a bank might have to devote extensive time and resource to find the source.  Finally, there is the risk that vulnerabilities can creep into the software development process, leading to breaches that are not detected until it is too late. 
Clearly, the scale of the potential risk and associated costs is too high to ignore and we are seeing more and more FS firms face this challenge head-on, adopting what has been coined ‘a single source of truth’.  Breaking down those traditional software development siloes, the idea of a ‘single source of truth’ is one place for all the digital assets involved in a project or product’s development and on-going lifecycle, from idea, design and development, through to test, deployment, release and maintenance.  The ‘single source of truth’ must be extremely collaborative and transparent, with item-level tracking and visibility of what changed, by who, why and when, across every single digital asset and contributor, technology, internally and externally. "

Recommendations on how FS (and other institutions) could build the SSoT in the link provided above. 

quinta-feira, 1 de março de 2018

TOOL: Statistical Analyis - Oracle Crystal Ball (Monte Carlo simulation)

Not free, but one very widely used tool for analyzing and improving Process Performance Models (PPM) using Monte Carlo simulations:



Quoting:

"Oracle Crystal Ball is the leading spreadsheet-based application suite for predictive modeling, forecasting, simulation, and optimization. It gives you unparalleled insight into the critical factors affecting risk. With Crystal Ball, you can make the right tactical decisions to reach your objectives and gain a competitive edge under even the most uncertain market conditions.

Using Monte Carlo simulation, Oracle Crystal Ball automatically calculates and records the results of thousands of different "what if" cases. Analysis of these scenarios reveals to you the range of possible outcomes, their probability of occurring, the inputs that most impact your model, and where you should focus your efforts. Oracle Crystal Ball is for strategic planners, financial analysts, engineers, scientists, entrepreneurs, CPAs, marketing managers, venture capitalists, consultants, six sigma professionals, and anyone else who uses spreadsheets to forecast uncertain results."