Low Code Software Development

What is prompting this post is some recent articles on my cellphone Google News Feed talking about how much faster “low-code/no-code” development is.

I coded my first computer program back in the early ’70s.  I have been an interested (mostly) bystander since then.

There have been many attempts to make software development quicker and more efficient.  Some have worked.  Some haven’t.

Some of the earliest improvements to speed up software development were caused by doing more/most of the software development in “higher-level” languages rather than Assembler.  Someone reported that if you had a good optimizing Fortran IV compiler you could hire 4 Fortran programmers for the cost of a single Assembler programmer and get very nearly the same performance out of the code that was created while getting nearly 4 times more software production.

Then along came the idea of “4th Generation Languages” that were designed to allow you to tell your computer “what” you wanted to be done and then “it” spent its time during the “compile” phase figuring out “how” to do it.  The results were spectacular in the speed of development but the resulting code wasn’t always very efficient.  The original version(s) of FOCUS was one of many examples of “how-not-to” replace a very fast data-entry system in Command Level CICS/Cobol with a much slower rapidly developed equivalent in FOCUS.  I heard a report that they had to quadruple the staff using that version of the Application to get enough productivity.

SQL is still the most commonly used and efficient language of this type.

Another idea that has come into and gone out of fashion is the “low-code” or “no-code” approach to software development.  This can speed up the development process significantly.  The catch is the “tool/interface” you are using has to be able to fully support the solution of the problem you are trying to solve.

When programmers started having to “customize” the code after it had been built by the no-code environment this caused problems until something like “round-tripping” was invented.  Up to that point every time you generated a change with the no-code environment you made all your customization(s) disappear so you have to “re-apply them”.  This was very inefficient.  So the no-code people tried using techniques like “round-tripping” to preserve the customizations.  Apparently, there was never a really good way to preserve customizations because no-code systems to create customized development appear to have fallen out of favor some time ago.  Now they are apparently back.

One other thing that came into favor and is still a favorite was “COTS” packages that provided limited parameter-driven flexibility for well-understood business processes.  The major brand names on this are products like SAP.

So now people are promoting “low-code/no-code” development again.  But wait, there’s more.  Apparently, they are trying to use Machine Learning and other Artificial Intelligence techniques to leverage up the power of computer hardware and reduce the human element in coding a solution.

I am a great fan of being able to tell my “computer” what to do and having “it” figure out how to solve the problem(s).  And while things are getting better I am not sure how soon that this new trend is going to succeed in un-employing countless journeyman software developers.

Tom M

ps. One of the no-code developer systems is called “Divi” and it allows you to create a custom-built WordPress-based website without coding.  It is on my TTD list to implement and start using.

 

 

 

 

 

Is your Windows 10 PC lagging/stuttering Part 2?

In part 1 I addressed some of the most important things you can do by changing your software settings and running utilities to cleanup and defragment your Hard Disk Drive. In this post I will list several common hardware upgrades you could do to reduce your Windows 10 system’s lagging and/or stuttering.

  • Increase the available ram/memory.  While Windows 10 will run in 4 GB’s of ram.  Your system will use “Virtual Memory” aka: Paging File much less often if you are running 8 GB of memory or possibly higher.  This is the single BEST way you can speed up your computer.
  • Upgrade your HDD to either simply a faster HDD (7200 rpm) or preferably a Solid State Device.  A SSD is similar to a Flash drive but much faster, much larger and more reliable under typical HDD conditions.
  • If you are running a Desktop machine you may be running an “integrated” video card on the motherboard or in the cpu.  You can upgrade your video card for anywhere from a modest $40-$60 to $500 and gain massive improvements in your video display speeds.  I don’t recommend spending much more than the $40-$60 range on a video card upgrade without doing a lot of research and/or asking advice from trusted sources.

TlG

Getting more production out of your Hours of production

I have reviewed a book called Zen To Done.  I have been exploring increasing personal and corporate productivity.  I have studied Lean/Six Sigma.  The WordPress powered Blogosphere is a wonderful place to browse, explore or search in.  So I ran across this blog post on productivity.

As in ALL situations where you are trying to increase productivity, you are absolutely not trying to cause someone to put “more effort” into their work.  You are trying to get either the same production with less effort or get more productive with the same effort.  The key is the “Work Smarter, Not Harder” idea.

Lean and Six Sigma both have their roots in manufacturing.  There have been enormous successes in manufacturing (see “The Toyota Way” for instance).  There have been numerous attempts and perhaps successes in applying Lean/Six Sigma to the service industry and to Knowledge work.  Its not easy to do.  A major stumbling block is being able to measure your productivity.  If you can’t measure it, how can you be sure your changes actually improved your productivity?

Douglas W. Hubbard wrote a book called “How to Measure Anything – Finding the Value of “Intangibles” in Business.”  He has setup a training and certification program to help business people and consultants get a handle on this.  Jay Arthur is a consultant in Lean/Six Sigma and has written about using LSS in service industries like hospitals.  So it is possible to apply these techniques.

My favorite (lean) story about how to increase productivity in an office process is a “follow the object of the workflow through the process from the object’s point of view”.  When you do this you will find that the object spends significant time waiting between activities.  If you can locate those wait times and if you can reduce the wait times you can speed up the production of that service without actually making anyone work harder.

“Lean” probably won’t help a pure Knowledge Worker situation but it will help a multi-step service business.

I just noticed that using this WordPress application for posting drops out the spellcheck I am used to having.  I need to investigate if I can get this back in, or return to the web interface where I have Grammarly available to grammar/spell check. Hmmm…..

TlG

 

Mouse scrolling the opposite of what you are used to?

After I upgraded my “new” Lenovo X140e to Windows 10 from Windows 8.1+”classic shell”(to give it the look and feel of Windows 7) I discovered the scrolling on the mouse pad was “backward” to what I was used to.

For instance, when I use two fingers to go “down” the mouse pad I expect the screen to roll down the page.  It wasn’t, it was moving the screen in the same direction I dragged my fingers.  So if I drag my fingers down, the screen rolls “up” the page.  While this sounds counter-intuitive according to my Chromebook (Aus C-300) this is called “Australian” scrolling.  In the Windows 10 Mouse settings menu, they call it “reverse scrolling.”  Somehow my “default” got set for reverse scrolling.

What if you want your Windows 10 machine to return to “regular” scrolling?  There is a fix.  I searched the internet… and it appears that if you dig far enough down into the mouse settings you can change the 2 finger behavior to “normal”.

First, you use the Cortana search box to find “mouse settings” and it offers you “Mouse and touchpad.”

Second, you click on the “additional mouse options.”

mouse-settings-2

Third, you click on the “enable touchpad” settings button.

mouse-settings-3

Fourth, you click on the scrolling listing on the “tree.”

mouse-settings-4

Fifth, you select the “two finger scrolling”.

mouse-settings-5

Sixth, you make sure the “reverse scrolling” box is un-checked.

Then start clicking, “apply” and “ok” until all the menus are closed. You should then discover that Windows 10 now scrolls like previous versions. eg. If you move you two fingers down the mouse pad, the screen scrolls down, just like it does when you use a mouse.

Turn your older laptop or desktop into a Chromebook clone

Recently I received great news.  “CloudReady has a Chrome OS platform ready for your non-chromebook hardware”  If that link to the article on Tech Republic doesn’t work, here is the website.  You are probably interested in an individual copy of the Chromebook clone product.  It is free for individual use.

If you have an Intel PC hardware platform (usually a windows laptop) that is 8 years old or younger that you would like to run a fast, robust operating system on but it isn’t up to running say  Windows 7, Windows 8.1 or Windows 10, then this is a turnkey solution.  I have successfully installed it on 2 out of 3 laptops and a desktop I tried.  It failed on a non-standard old SSD netbook.  They have a list of tested hardware that is quite extensive on the website.

The User Interface is exactly like my ASUS Chromebook.  You will experience the Chromebook exactly except for two things.  1) If you are used to the 7 second boot time for many Chromebooks, you won’t get that.  It will boot exactly as fast as a Linux distribution would on the same hardware (around 30 seconds on mine).  2) The hardware-based security features are mostly not present.   For most people, School districts or Companies neither of the above will be deal breakers.

You will need a 8 GB Flash drive to install the Chromebook clone OS from.  The native setup only supports standalone booting and UEFI “dual booting”.  If you choose, standalone booting, all the previous information on the hard disk is deleted during the install.  With UEFI “dual booting” the previous operating system remains and is also bootable.  You will need either a fairly fast internet connection or quite abit of patience to download the operating system.

If you have a Chromebook or a Chrome browser and sign in with a Google id, CloudReady will download/clone all your extensions, applications and allow you to access your Google Drive-based data on your “new” cloned Chromebook.

Because I have an ultra-thin Chromebook I have not been motivated to move over and use this product full time.  I have one very slow (1 GHz) sub-notebook that “barely” runs Windows 10.  I may turn it into a CloudReady notebook again.  I have turned a Dell Optiplex 760 (desktop) into a Chromebook.

If you have been wanting to experiment with a Chromebook or have wanted a Chromebook but couldn’t afford a couple hundred bucks for a new/used on on E-Bay this is your path.  Educational and Commercial licenses and support are available.

If you are a school with obsolete laptops available this is an excellent, very low-cost way to repurpose them into Chromebooks.  Both Educational and Commercial licenses and support are available.

Any questions?  Post a comment.

Thanks.
Tom M

Need some help with your Computer?

While I am pretty expert on a number of computer support issues and can offer advice easily.  Some topics require remote access to your computer and research.  If you want to contact me be my guest.

← Back

Thank you for your response. ✨

Speeding up your Personal Computer

The first question that comes to mind is “why” do you want to speed up your computer?

  1. I want to play games on it.
    1. You need to look at the minimum and recommended hardware for that game.  It may either be cheaper to buy a newer computer or it may not be possible to upgrade your current computer to play that game (for example trying to upgrade the video on most laptops).
  2.  It is slower than it used to be.
    1. There are several things you can try to speed up your computer.
      1. Un-install any programs you are not using regularly.
      2. Disable as many programs that normally “startup” while the computer is starting up.  In windows 7 try running the “system configuration” program from search box or help menu.  You can also get “Autorun for Windows” from Microsoft.com to help you with this.
      3. Run the “cleanup temporary files” under system tools.
      4. Run the hard disk defrag after iii.
    2. If the above do not speed up your computer sufficiently you have 3 other choices:
      1. Back up all your data and personal preferences and do a “clean” re-install of your operating system.  Then re-install your anti-virus, run all the service pack updates, re-install your applications/programs and then re-load your data/preferences.
      2. Increase the available memory on your system.  If your running less than 2 Gigabytes of memory on a Windows computer increasing it to 4-8 Gigabytes will make a big difference.  The reason it will make a big difference has to do with what operating systems do when they run out of memory.  They write copies of part of the memory out to the hard disk into what is called “Virtual Memory” or the Paging file.  Anytime a computer has to read or write to the Virtual Memory the whole system is slowed down on the order of 100 times.  The only time this is not true is if you are using what is called a “ram drive” or the SSD hard disks that use memory modules in place of “regular hard drive” media.
      3. Replace your computer if it is a laptop.  Or try to do a motherboard upgrade if you have a pretty standard (ATX) desktop machine.

        ← Back

        Thank you for your response. ✨

 

Introduction to Personal Computer Troubleshooting (continued)

I am going to talk about “general things you should do” to keep your computer healthy.

1) Always have a “firewall” running on the computer even when your inside a “firewalled” network.  The only exception to this rule is when network-based applications are failing for un-known reasons.  Then after consulting with your Techy you might try turning the workstation/server firewall off will keeping the Internet interface firewall turned on.

2) Always have an Anti-Virus program installed and up to date.  There are a lot of very good free Anti-Virus programs out there including one from Microsoft.  Use something!

3) Always have a program like the free version “Search and Destroy – Spybot” installed and available to run.  Browsers keep getting infested with assorted items that steal information and report on your internet activity.  S & D – Spybot will not only clean out those problems but for Internet Explorer and Mozilla Firefox it also offers “immunization” that protects the browser from many common exploits.  Another commonly used one is the free version of “Adware”.

As time goes on the commercial and free Anti-virus programs are providing more protection to browsers.  But as of this writing they still don’t replace S & D Spybot and/or Adware.

4) Don’t download and install software that you didn’t specifically go looking for on the Internet.  A lot of “Ads” that offer downloadable software over the Internet turn out to be variations on Spyware and also produce un-wanted “popups”.  You need to either only install reputable software you are familiar with or to find reviews of software someone is offering you to see if that are any “gotchas”.

I have relative who regularly downloads programs off the internet that “looked” interesting.  He keeps getting un-wanted popups and allegedly free programs that cost to actually be useful.  About every quarter I have to go over and clean off their PC.

5) Un-install any program you have on your PC that you are not using regularly.  This will help delay the time where your PC starts slowing down.  A large number of programs will startup “helpers” when you turn on your PC.  This ties up resources and (eventually) will slow your PC down.

6) Operating System Updates – For windows you should always have these turned on to run automagically and in the background.  I suspect the Mac/Android OS’s are updated less frequently but if an automated way to keep them updated is available it should probably be implemented.  Deciding when to update Linux is more complicated because depending on exactly which “brand” of it you are running you want to keep it completely current (maybe even beta-release) or you want to wait for the “long release”.

← Back

Thank you for your response. ✨

Introduction to Personal Computer Troubleshooting

I am assuming that you are already “computer literate” on your choosen platform (eg.Windows, Mac, Linux, Android etc).  If you are still un-comfortable with your PC, Tablet, Cellphone the first thing you will need to do is search for “how to” articles for your hardware/operating system to get yourself up to speed.  If your trouble is being caused by “operator error” then you need to fix that first.

Trouble comes (in theory) from malfunctioning hardware and malfunctioning software (eg. Viruses, badly written computer programs, etc).  The catch is there is also the interface between computer hardware and software.  These are called “drivers” and if they are malfunctioning it can be hard to track it down.

Trouble on a computer is generally related to either “running to slow” or “crashing”.  Crashing refers to an un-planned computer stoppage where it either stops working but still seems to be running or a spontaneous re-boot where you suddenly discover your computer is starting up again.  Running to slow is an “objective/subjective” issue.  It might be that the computer is not running fast enough to suit you or it might be the computer is running slower than it used to.

Both problems start their troubleshooting with “What was the last program you installed” and/or “What is the last file you downloaded/installed from the Internet?”  Modern computers (less than 3 years old) don’t usually have hardware issues unless you plug something new in.  But new software can commonly cause a problem.  So if you installed a new program or updated a program in the last couple of weeks that is the first place to look.

How do you “look”?  Go to the Frequently Asked Questions page for the last program you installed and/or updated.  Does it mention “known” problems?  Do you have any programs that are listed as “not playing together”?  Etc.  If there is no ideas there you could try un-installing the program and seeing if the problem goes away.  If it does, then most likely that last installed program was causing the problem.

A related question is “What were you doing” when you started having trouble.  1) What programs 2) How many are open 3) What files did you have open?  If you only have that one application open/running does the problem go away?  Or is it always “that program” that gives you trouble.

(To be continued)