Way back in the distant past, I used Hypercard, FileMaker, and, later, NeXT tools, to build complex expert systems, knowledge management, and financial planning tools for a diverse customer base. Applying a little bit of "MBA-powered" know-how with real-world entrepreneurialism enabled me to solve problems in the environmental sector, for small businesses, and even for the mortgage industry.
Fast forward to present day, and we see many software-as-a-service solutions that offer pre-packaged solutions to widely acknowledged challenges. My own solution for team management comes from a history of fixing broken projects for others -- I am a firm believer in the philosophy of "eat your own dogfood."
Now, we loop back to the past, with the increasing availability to low- or no-code software development solutions. Airtable, the Salesforce platform and web-based tools such as Ninox for databases are all useful tools to quickly assemble software to address highly specific problems. These are kind of the "spreadsheet" of the 21st century. One stand-out is Zapier, which has opened the door for many to integrate existing platforms with other popular web apps. Integrating applications with code can be a challenge, but Zapier makes it possible with a few clicks.
While no-code won't solve all technical challenges, having an easily accessible stack can undoubtedly help get specific jobs done faster, easier, and cheaper. Democratizing development is the overall benefit of no-code software development solutions. A few others include reducing the work load on an IT department, as such solutions enable business users to build applications without any coding knowledge. This reduces the burden on an understaffed IT department.
We can also enjoy an accelerated development cycle, so one doesn't have to wait for solution requests to be answered by theaters. Tasks that used to take months (even years) to complete can now be done in a few hours or days, depending on its complexity.
With many point-and-click user interfaces for the development of no-code solutions, one can quickly build solutions to meet exact requirements and specifications, and be updated on the fly. These aspects are important to keep the business competitive and agile. While a no-code solution allows the development of applications for immediate impact, it can also prove to be cost-efficient in the long run.
Intellectual capitalism drives Bluedog. We believe an intellectual capitalist pursues freedom of choice -- and what counts is freedom in the marketplace, in the home, in one's thoughts.
Showing posts with label programming. Show all posts
Showing posts with label programming. Show all posts
Thursday, July 30, 2020
Thursday, July 2, 2020
Leverage Serverless for a Better Tomorrow
Over at this podcast, we hear Johnny Boursiquot, Site Reliability Engineer at Heroku tell how he has found Go to be a useful language for building Function-as-a-Service (FaaS) style applications -- an extension of microservices. In an interview, he expounds on the capability to build Go applications into a static binary -- and reduce the need for dependency management. With rapid application startup, another benefit is runtime speed and scaling.
Focusing on a development toolchain focused on the cloud means programmers benefit from flexibility. For example, many cloud providers provide local runtimes such as AWS SAM Local, and service simulators. Testing in production is facilitated by the ability to do on-channel launches and test deployments with a "canary in a coal mine" approach.
One can develop “serverless” applications while not avoiding the need for operational expertise on a DevOps team. Designing systems appropriately and getting the most out of the runtime (with minimal cost) requires knowledge of the underlying infrastructure components.
An emerging role is that of the Site Reliability Engineering (SRE), often an expert who can adapt well-established patterns and practices into their activities. They act as “go-betweens,” working closely with product teams to share knowledge around operational best practices.
One under appreciated skill is the ability to teach or mentor, regardless of the job. Knowledge transfer to coders or setting as SOPs important operational principles is extremely valuable.
Listen to the podcast here...
Focusing on a development toolchain focused on the cloud means programmers benefit from flexibility. For example, many cloud providers provide local runtimes such as AWS SAM Local, and service simulators. Testing in production is facilitated by the ability to do on-channel launches and test deployments with a "canary in a coal mine" approach.
One can develop “serverless” applications while not avoiding the need for operational expertise on a DevOps team. Designing systems appropriately and getting the most out of the runtime (with minimal cost) requires knowledge of the underlying infrastructure components.
An emerging role is that of the Site Reliability Engineering (SRE), often an expert who can adapt well-established patterns and practices into their activities. They act as “go-betweens,” working closely with product teams to share knowledge around operational best practices.
One under appreciated skill is the ability to teach or mentor, regardless of the job. Knowledge transfer to coders or setting as SOPs important operational principles is extremely valuable.
Listen to the podcast here...
Monday, November 18, 2019
Achieving Simplicity in a Complex System
Mumbai is one of the largest cities in the world and an average working professional leaves home pretty early in the day to take the local train to commute to the work. Each day approximately 4,000 dabbawallahs deliver almost 250,000 home-cooked meals (for late breakfast and lunch) from the kitchens of suburban wives and mothers direct to workers in “the world’s most ingenious meal distribution system.”
The foot soldiers are Dabbawallahs, who pick up the home-cooked lunches in the suburbs, hop on trains, and deliver them, on foot or bike, to office workers in Mumbai. Later on, they pick up and bring back the same empty tiffins (the name for the metal containers used).
The tiffins consist of several stacked aluminum boxes with a carry-handle. Each container carries individual portions that separate curry dishes, bread, rice, desserts, and more. This means multiple courses. Tiffins come in several different compartments so as to separate starter, mains, and dessert. The tiffin serves to keep food in its original shape - no bruised fruit or mashed roti. The tiffin’s handle is at the top, keeping everything upright when being carried. Home-cooked meals are economical and can be more healthy.
While the system seems very complicated, it is the coming together of many elements, including the railway system in Mumbai. The dabbawallah rely on the train to deliver the lunch boxes around the city. Stefan Thomke, the Harvard Business School professor studied the system: “[the railway] sort of helps them in unexpected ways. It synchronizes the system because in Mumbai the railway is one of the few things that always runs on time. It forces the entire organization to run according to a rhythm.”
Another example of how simplicity aids the dabbawallah system is the labeling of the tiffins. There’s very little information coded on the boxes. “For example, there’s no return address,” says Thomke, “but these boxes have to go back to the person who gave them to you.” The simple color coding system acts as an identification system for the destination and recipient and origin of the tiffin.
The Dabbawala Association has been in business for over last 125 years. In 1998, Forbes Magazine recognized its reliability to match the Six Sigma standard. This means that the dabbawalas make less than 1 mistake in every 6 million deliveries. Be it a Steve Jobs or Picasso, all the great artists always had a penchant for simplicity. Value and efficiency is maintained by keeping to basics. The process is very lean and uncomplicated. And the customer is the most important cog in this machine.
Read more here
The foot soldiers are Dabbawallahs, who pick up the home-cooked lunches in the suburbs, hop on trains, and deliver them, on foot or bike, to office workers in Mumbai. Later on, they pick up and bring back the same empty tiffins (the name for the metal containers used).
The tiffins consist of several stacked aluminum boxes with a carry-handle. Each container carries individual portions that separate curry dishes, bread, rice, desserts, and more. This means multiple courses. Tiffins come in several different compartments so as to separate starter, mains, and dessert. The tiffin serves to keep food in its original shape - no bruised fruit or mashed roti. The tiffin’s handle is at the top, keeping everything upright when being carried. Home-cooked meals are economical and can be more healthy.
While the system seems very complicated, it is the coming together of many elements, including the railway system in Mumbai. The dabbawallah rely on the train to deliver the lunch boxes around the city. Stefan Thomke, the Harvard Business School professor studied the system: “[the railway] sort of helps them in unexpected ways. It synchronizes the system because in Mumbai the railway is one of the few things that always runs on time. It forces the entire organization to run according to a rhythm.”
Another example of how simplicity aids the dabbawallah system is the labeling of the tiffins. There’s very little information coded on the boxes. “For example, there’s no return address,” says Thomke, “but these boxes have to go back to the person who gave them to you.” The simple color coding system acts as an identification system for the destination and recipient and origin of the tiffin.
The Dabbawala Association has been in business for over last 125 years. In 1998, Forbes Magazine recognized its reliability to match the Six Sigma standard. This means that the dabbawalas make less than 1 mistake in every 6 million deliveries. Be it a Steve Jobs or Picasso, all the great artists always had a penchant for simplicity. Value and efficiency is maintained by keeping to basics. The process is very lean and uncomplicated. And the customer is the most important cog in this machine.
Read more here
Friday, March 22, 2019
Why Process is Important to Scale Agile
Using SafeAgile and other lean software development approaches require customization for the organization. It isn’t good enough to just duplicate the efforts of others. Organizational change management means addressing top-down control that is in opposition to change — this will undermine agility.
Each agile team is different and needs to learn what works. In many cases, this means scaling agility outside of functional areas. Breaking down silos is key to the cross-over benefits of agile, reflecting the cross-functional nature of agile. Agility means putting in place defined engineering practices, with process controls.
While daily stand-ups and Kanban boards are important, to build high-quality software quickly, organizations should incorporate automated builds, automated testing, and automated deployments, among other things.
Read more... about SafeAgile
Each agile team is different and needs to learn what works. In many cases, this means scaling agility outside of functional areas. Breaking down silos is key to the cross-over benefits of agile, reflecting the cross-functional nature of agile. Agility means putting in place defined engineering practices, with process controls.
While daily stand-ups and Kanban boards are important, to build high-quality software quickly, organizations should incorporate automated builds, automated testing, and automated deployments, among other things.
Friday, March 8, 2019
Oracle Java Copyright is Dangerous to the Developer Community
The US Supreme Court has been urged to hear Google out in its long-running copyright battle with Oracle over the search giant’s use of Java technology in Android. A number of amicus briefs have been filed with the top court in support of Google, with Microsoft, Red Hat and Mozilla, along with the Python Software Foundation, Developers Alliance, and the EFF, backing the web titan against database-slinger Oracle.
These recount an earlier court ruling in Oracle's favor on the fair use of Java APIs – stating, as it stands, that it sets a dangerous precedent that breaks long-standing and well-understood rules on software development, risks confusing the community and will damage innovation.
Google insists it built the Android platform on the computer industry’s “long-accepted practice of re-using software interfaces” – and that Oracle is "trying to profit by changing the rules of software development after the fact."
The Developers Alliance also sought to emphasize the knock-on effects of the decisions. “The current case has implications that go far beyond the two litigants involved,” as written in this PDF...
These recount an earlier court ruling in Oracle's favor on the fair use of Java APIs – stating, as it stands, that it sets a dangerous precedent that breaks long-standing and well-understood rules on software development, risks confusing the community and will damage innovation.
Google insists it built the Android platform on the computer industry’s “long-accepted practice of re-using software interfaces” – and that Oracle is "trying to profit by changing the rules of software development after the fact."
The Developers Alliance also sought to emphasize the knock-on effects of the decisions. “The current case has implications that go far beyond the two litigants involved,” as written in this PDF...
Sunday, September 10, 2017
Struts Framework Problem led to Equifax Data Breach
Hackers gained access to millions of credit report holders' information via a known Java Struts vulnerability.
The breach details can be found here...
Read more...
The credit reporting agency Equifax announced on Sept. 7 that hackers stole records containing personal information on up to 143 million American consumers. The hackers behind the attack, the company said, “exploited a U.S. website application vulnerability to gain access to certain files.” That vulnerability, according to a report on the data breach by William Baird & Co., was in a popular open-source software package called Apache Struts, which is a programming framework for building web applications in Java. Two vulnerabilities in Struts have been discovered so far in 2017.
The breach details can be found here...
Read more...
Wednesday, August 2, 2017
Why Micro-Services are the "Go to" for Service Oriented Architecture
Within the SOA universe, a micro-service architectural approach means developing a single application as a suite of small services, each running in its own process and communicating with a lightweight mechanism, such as an HTTP API call. Micro-services are built around business processes, with independent and fully automated deployment machinery. There is a bare minimum of centralized management and services may be written in different programming languages and use different data storage technologies.
Microservices are designed to be independently deployable, whereas SOA services are often implemented withing a single monolithic environment. SOA is an architectural pattern in which application components provide services to other components -- but those components can belong to the same application. Micro services deconstruct services from apps.
Read more here ...
Microservices are designed to be independently deployable, whereas SOA services are often implemented withing a single monolithic environment. SOA is an architectural pattern in which application components provide services to other components -- but those components can belong to the same application. Micro services deconstruct services from apps.
Read more here ...
Tuesday, November 17, 2015
Tired of Scrum? Get Ready for the "Open Development" Methodology
While Scrum and other agile methodologies have made inroads since 1990s, much has changed. Startups and enterprises with workforces spread across time zones can no longer co-locate their employees as they were once expected to be able to. As the world shrinks, organizations are finding themselves in a position to decouple the software development approach from traditional means. We see open source everywhere in 2015 -- with the diversity of teams developing for the most popular open source projects, one wonders how to succeed without the benefit of managers, meetings, and code sprints?
With "open development," decisions are made in public view, and Project Managers and engineers are responsible for their own actions -- autonomous but accountable. The approach emphasizes more than just code delivery, but collaboration and transparency. The other aspect of open development method is in keeping the peer review process business-like and professional.
Another consideration is the role of software patents, an issue that remains controversial in the software industry. There has also been much discussion in the software development community over the increasing use of Web 2.0-style software services, otherwise known as Software as a Service (SaaS) or the ‘Service Cloud’.
As part of an open development method, code quality is paramount, so code should be legible, able to be tested, module and minimally verbose. Each of these factors benefits not only the development team, but stakeholders (and, ultimately, end users). Here's a quick summary of the open development philosophy.
With "open development," decisions are made in public view, and Project Managers and engineers are responsible for their own actions -- autonomous but accountable. The approach emphasizes more than just code delivery, but collaboration and transparency. The other aspect of open development method is in keeping the peer review process business-like and professional.
Another consideration is the role of software patents, an issue that remains controversial in the software industry. There has also been much discussion in the software development community over the increasing use of Web 2.0-style software services, otherwise known as Software as a Service (SaaS) or the ‘Service Cloud’.
As part of an open development method, code quality is paramount, so code should be legible, able to be tested, module and minimally verbose. Each of these factors benefits not only the development team, but stakeholders (and, ultimately, end users). Here's a quick summary of the open development philosophy.
Tuesday, November 1, 2011
Techie post - useful HTML5 reference
This is a really clever way to summarize HTML5. Note, the table shows the 100+ elements currently in the HTML5 working draft and a couple of proposed elements. When the "V" in Model-View-Controller should work well with mobile clients, widespread (and muli-vendor) browsers, and perhaps event TVs. Is HTML5 the final nail in the Flash coffin? I don't like predicting, but I do like open standards.
This fellow collects some interesting web apps that leverage the standard (use a modern browser, natch).
EDIT: Link updated to different version, courtesy of Robert Mening, Web developer & designer from Sweden, Malmö.
This fellow collects some interesting web apps that leverage the standard (use a modern browser, natch).
EDIT: Link updated to different version, courtesy of Robert Mening, Web developer & designer from Sweden, Malmö.
Subscribe to:
Posts (Atom)

