Software-Other

37K

Solutions

38K

Contributors

Software is any set of instructions that directs a computer to perform specific tasks or operations. Computer software consists of programs, libraries and related non-executable data (such as documentation). Computer software is non-tangible, contrasted with computer hardware, which is the physical component of computers. Software written in a machine language is known as "machine code". However, in practice, software is usually written in high-level programming languages than machine language. High-level languages are translated into machine language using a compiler or interpreter or a combination of the two.

Share tech news, updates, or what's on your mind.

Sign up to Post

If you're a modern-day technology professional, you may be wondering if certifications are really necessary. They are. Here's why.
3
Comprehensive Backup Solutions for Microsoft
LVL 4
Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

This month, Experts Exchange’s free Course of the Month is focused on CompTIA IT Fundamentals.
0
Ever wonder what it's like to get hit by ransomware? "Tom" gives you all the dirty details first-hand – and conveys the hard lessons his company learned in the aftermath.
4
 
LVL 12

Expert Comment

by:Andrew Leniart
Comment Utility
Thanks for sharing your story. Ransomware is a topic I follow closely and have a lot of interest in. Sorry to hear you were hit by these criminal scum bags and while it irks me to know they profited from your misfortune not once, but twice, I understand the dilemma you were faced with. Backups are something we all tend to fall lax with at times and this story highlights the reasons we all need to stay vigilant. Good luck for the future.
0
 
LVL 1

Expert Comment

by:Josh Petraglia
Comment Utility
Education is Power!

Also, (offline) Backups are your best friend. Just saying.
0
In this article I discuss my selections of the Top Four free Outlook OST File Viewers available. Open, view and read even damaged OST files by using these tools. They all provide a clear preview of all data such as emails, notes, tasks, calendars, etc., in just a few number of clicks.
0
Curious about the latest ransomware attack? Check out our timeline of events surrounding the spread of this new virus along with tips on how to mitigate the damage.
6
 
LVL 7

Expert Comment

by:Nicholas
Comment Utility
1
This post contains step-by-step instructions for setting up alerting in Percona Monitoring and Management (PMM) using Grafana.
0
Invest in your employees with these five simple steps to improve employee engagement and retention.
7
Speed up a Slow Computer
There are many software programs on offer that will claim to magically speed up your computer. The best advice I can give you is to avoid them like the plague, because they will often cause far more problems than they solve. Try some of these "do it yourself" tips instead.
3
 

Expert Comment

by:Arkel Thompson
Comment Utility
Thank you very much, Andrew Leniart for that very informative and thorough article. Keep up the good work.
1
 
LVL 12

Author Comment

by:Andrew Leniart
Comment Utility
You're very welcome Arkel and thank you for the compliment, I appreciate it.
1

This article was originally published on Monitis Blog, you can check ithere.



If you have responsibility for software in production, I bet you’d like to know more about it. I don’t mean that you’d like an extra peek into the bowels of the source code or to understand its philosophical place in the universe.  Rather, I bet you’d like to know more about how it behaves in the wild.

 

After all, from this opaque vantage point comes the overwhelming majority of maddening defects.  “But it doesn’t do that in our environment,” you cry.  “How can we even begin to track down a user report of, ‘sometimes that button doesn’t work right?'”

 

To combat this situation we have, since programmer time immemorial, turned to the log file.  In that file, we find answers.  Except, we find them the way an archaeologist finds answers about ancient civilizations.  We assemble cryptic, incomplete fragments and try to use them to deduce what happened long after the fact.  Better than nothing, but not great.

 

Because of the incompleteness and the lag, we seek other solutions.  With the rise in sophistication of tooling and the growth of the DevOps movement, we close the timing gap via monitoring.  Rather than wait for a user to report an error and asking for a log file, we get out in front of the matter.  When something flies off the rails, our monitoring tools quickly alert us, and we begin triage immediately.



Common Monitoring Use Cases


Later in this post, I will get imaginative.  In writing this, I intend to expose you to some less common monitoring ideas that you might at least contemplate, if not outright implement.  But for now, let’s consider some relative blue chip monitoring scenarios.  These will transcend even the basic nature of the application and apply equally well to web, mobile, or desktop apps.

 

Monitis offers a huge variety of monitoring services, as the name implies.  You can get your bearings about the full offering here.  This means that if you want to do it, you can probably find an offering of to do it unless you’re really out there.  Then you might want to supplement these offering with some customized functionality for your own situation.

 

But let’s say you’d just signed up for the service and wanted to test drive it.  I can think of nothing simpler than “is this thing on?”  Wherever it runs, you’d love some information about whether it runs when it should.  On top of that, you’d probably also like to know whether it dies unexpectedly and ignobly.  When your app crashes embarrassingly, you want to know about it.

 

Once you’ve buttoned up the real basics, you might start to monitor for somewhat more nuanced situations.  Does your code gobble up too many hardware resources, causing poor experience or added expense?  Does it interact with services or databases that fail or go offline?  In short, does your application wobble into sub-optimal states?

 

But what if we look beyond those basics?  Let’s explore some things you may never have contemplated monitoring about your software.



User Engagement


Facebook has developed some reputation around having deployment nirvana.  They constantly roll to production and use a sophisticated series of checks, balances, tests, and monitoring to alert them to problems needing correction.  If the number of baby pictures in my feed is any indication, I’d say they’re doing pretty well.

 

But what happens if Facebook pushes something to production with a mistake not easily caught by automated unit tests?  For instance, what if they accidentally deployed some CSS that turned the “post” button and its text the same color as the background.  The flow of baby pictures would cease, even as all tests passed with flying colors.

 

Monitis offers “real user monitoring,”  which generalizes a specific case can address this situation.  You may want to monitor user behavior in terms of how they engage with the site.  If Facebook monitors how many times per second its users click “post,” and they see that drop to 0 after a production roll, they’ll know they have an issue almost immediately.  Even if they don’t know what causes it, they can triage and mitigate almost immediately.



Revenue


If you have responsibility for any sort of e-commerce operation, I strongly encourage you to monitor your revenue.  In a sense, you might consider this a specific instance of user engagement.  You’ll have some sort of normal drip of people making purchases.  Anything affecting that presents you with an obvious red flag.

 

You might be tempted to think of this as an accounting problem more than a technical one.  Let techies monitor the nuts and bolts and accounting can worry about P&L?  I don’t advise it. Purchases count as arguably the most important metric.  They form the lifeblood of your business.



Bounces


You mainly think of a “bounce” when you think of web applications.  Google defines bounce as “a single-page session on your site.”  I believe this plays on the opposite of “sticking.”  People land, and “bounce off” of your site.

 

I’m going to re-appropriate the term a bit for our purposes here and generalize it to all application platforms.  You might want to monitor the rate at which users exit your application from a particular page/screen.

 

When they leave from, say, an “exit” screen, then fine.  You’d want a high percentage of departures from expected places.  But if people being to leave from a place you’d expect them to remain engaged, that might give you insight into a problem of some kind.  This holds doubly true if it suddenly spikes in one particular place.



User Experience Concerns 


This particular concern would require some fairly sophisticated monitoring capabilities, most likely instrumented from within.  If you do implement such a thing, take care not to impact performance.  But, if you’re up for it, you might learn some interesting things.

 

Consider monitoring user behavior for user experience concerns.  For instance, do users consistently dismiss a dialog far too quickly to have read it?  Or perhaps do they all tend to execute the same key sequences to navigate through several screens?  If so, you might have located opportunities to improve your user experience.  Get rid of superfluous dialog messages and see about adding shortcuts for things they do frequently.

 

And you certainly aren’t limited by my suggestions here.  If you have the capability to monitor interactions like this, study your own users with their particular happens and look to improve their experience.



Time to Load Visual Elements


This is another item that you hear about most frequently in websites.  But, as with my looser interpretation of the “bounce” concept, you could really measure this anywhere.  After all, sluggishness is sluggishness.

 

If you find yourself in a position to monitor the visual performance of your software, you stand to benefit from doing so.  Few things torpedo the user experience as quickly as maddeningly slow loads.  If this is happening, you want to know about it.

 

This holds doubly true for visual elements superfluous or non-essential to the experience itself. In the world of websites, think of ads or random widgets.  And, while you can test a lot of this for yourself, concerns may arise in the wild that you can’t mimic in your own shop.



Think of Your Own in the Spirit of Innovation 


I’ve enjoyed the exercise in exploring what you might want to monitor.  As both an entrepreneur and software developer, I like thinking about possible implementations, offerings, and features.

 

In fact, that captures what I find so appealing about the DevOps movement.  As we marry software creation and software delivery, we open up an entirely new category of innovation, that requires new and powerful tools.  We can then combine those tools with the inventive spirit to deliver ever-higher quality software.



Sign up for Monitis FREE 15-day full-featured trial! Premium plan starting from $12/month only!



0
SCCM Add to GRP TS
Adding Computers to AD groups through an SCCM Task Sequence
1
Free Tool: Site Down Detector
LVL 9
Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Troubleshooting common task sequence error codes
1
BDR
Binary Differential Replication, What it is, how it works and how it differs from standard delta file replication
1
The following article is intended as a guide to using PowerShell as a more versatile and reliable form of application detection in SCCM.
1
 
LVL 8

Expert Comment

by:Senior IT System Engineer
Comment Utility
Hi SCCMCanuck,

Which of the Powershell line that I can edit safely to suit my environment ?
0
 
LVL 9

Author Comment

by:SCCMCanuck
Comment Utility
Thanks for your interest. At the moment the following lines are safe to change

[version]$InstallerVersion = '8.0.1210.13'
$AppName = 'Java*'

The value of $AppName variable is a wildcard string that corresponds with the DisplayName registry value, where as $InstalledVersion corresponds to DisplayVersion.

You can modify any part of the script to accommodate any type of detection method and use and/or statements to create a more restrictive set of criteria. The goal of my example is to make the SCCM client agent believe that Java is installed if its version is greater than or equal to the value of $InstallerVersion in the Variable Declaration section

Registry.PNG
1
The following article discusses and demonstrates the advantages of using Pull Distribution Points in SCCM 2012 SP1 or higher as opposed to traditional push based architecture
0
Developer portfolios can be a bit of an enigma—how do you present yourself to employers without burying them in lines of code?  A modern portfolio is more than just work samples, it’s also a statement of how you work.
2
Pen Tablet
All of the resources available today make learning a new digital media easier than ever-- if you know where to begin. This is a clear, simple guide to a few of the basic digital art mediums and how to begin learning them on your own.
2
How to Build a Scalable Website
This guide will walk you through the essential considerations and tech stack for building scalable websites. Know how to grow your business the smart way!
0
In this article, you will read about the trends across the human resources departments for the upcoming year. Some of them include improving employee experience, adopting new technologies, using HR software to its full extent, and integrating artificial intelligence into the HR department.
0
Skype for Business
Skype is a P2P (Peer to Peer) instant messaging and VOIP (Voice over IP) service – as well as a whole lot more.
2
Get proactive database performance tuning online
LVL 3
Get proactive database performance tuning online

At Percona’s web store you can order full Percona Database Performance Audit in minutes. Find out the health of your database, and how to improve it. Pay online with a credit card. Improve your database performance now!

Today, still in the boom of Apple, PC's and products, nearly 50% of the computer users use Windows as graphical operating systems. If you are among those users who love windows, but are grappling to keep the system's hard drive optimized, then you should read this article.
3
The article will include the best Data Recovery Tools along with their Features, Capabilities, and their Download Links. Hope you’ll enjoy it and will choose the one as required by you.
1
 

Expert Comment

by:christy latham
Comment Utility
If you are an windows user then you can now recover your personal documents,files from any kind of hard disk drive with <a href = "https://blogs.systweak.com/2017/02/7-best-free-data-recovery-software/"> data recovery software </a> and bring lost data back with safe recovery.
0
 

Expert Comment

by:christy latham
Comment Utility
If you are an windows user then you can now recover your personal documents,files from any kind of hard disk drive with <a href = "https://blogs.systweak.com/2017/02/7-best-free-data-recovery-software/"> data recovery software </a> and bring lost data back with safe recovery.
0
Let’s list some of the technologies that enable smooth teleworking. 
0
Workplace bullying has increased with the use of email and social media. Retain evidence of this with email archiving to protect your employees.
2
 
LVL 66

Expert Comment

by:Jim Horn
Comment Utility
A very good read on an issue that affects us all.  Voting Yes.
0
A list of useful business intelligence software.
2
 
LVL 5

Author Comment

by:Oscar Waterworth
Comment Utility
I have a habit of writing in Google Docs. I will make sure not to copy from it again.

Thanks for the feedback!
0
Tableau
This article describes how to use the timestamp of existing data in a database to allow Tableau to calculate the prior work day instead of relying on case statements or if statements to calculate the days of the week.
1
 
LVL 16

Author Comment

by:Brian Pringle
Comment Utility
Tableau does not have a good set of business days.  It will calculate today and yesterday or a range of dates relative to today, but calculating based on another anchor date is not intuitive.  There are numerous questions on the Tableau Web site asking for this.  The reason that we are not using an actual table to store the dates is that we may not always have business on the weekend and other times might.  The intention of this procedure is to let the system figure out when the last business date was from the data rather than a set calendar.

The data set has a large amount of data that gets imported during each business day.  I can query the database to get the distinct list of dates and then calculate from there.  The LOD functions in Tableau are the closest thing to getting that information.
0
 
LVL 66

Expert Comment

by:Jim Horn
Comment Utility
Very well written.  Voting Yes.
0

Software-Other

37K

Solutions

38K

Contributors

Software is any set of instructions that directs a computer to perform specific tasks or operations. Computer software consists of programs, libraries and related non-executable data (such as documentation). Computer software is non-tangible, contrasted with computer hardware, which is the physical component of computers. Software written in a machine language is known as "machine code". However, in practice, software is usually written in high-level programming languages than machine language. High-level languages are translated into machine language using a compiler or interpreter or a combination of the two.