Dynamic Global » Blog https://wp.dynamicglobal.com Cutting-edge software development Sat, 12 Apr 2014 18:30:31 +0000 en-US hourly 1 https://wordpress.org/?v=3.8.2 Thoughts on Software Quality https://wp.dynamicglobal.com/2014/04/08/thoughts-software-quality/ https://wp.dynamicglobal.com/2014/04/08/thoughts-software-quality/#comments Tue, 08 Apr 2014 15:50:11 +0000 https://wp.dynamicglobal.com/?p=2580 I spend a lot of time at Dynamic Global focused on software quality.  Specifically, this means smooth functionality, fast page loads, and pixel-perfect design. But today I stopped for a moment and wondered: When I’m racing around the web, consuming

The post Thoughts on Software Quality appeared first on Dynamic Global.

]]>
software-quality1a

I spend a lot of time at Dynamic Global focused on software quality.  Specifically, this means smooth functionality, fast page loads, and pixel-perfect design. But today I stopped for a moment and wondered: When I’m racing around the web, consuming dozens of articles, reading this and that, do I ever stop long enough to actually notice the quality of the website that I’m reading?  Do I really care about their software quality?

Actually, I do notice and I do care, although sometimes only subconsciously.

Think about it this way.  In the most general terms, consider the subtle impression you are left with after visiting apps and sites from various companies. You’ll begin to realize that all these guys, in one way or another, do leave you with a different impression. And this impression comes with not-so-subtle ramifications for that company.  You may have formed opinions about these companies based on your experience with their software quality, even if you didn’t think about it too much.

As an exercise, I started thinking about the different types of websites and apps that I use, and about who makes them.  Then, I tried to think about what sort of unobvious impressions I may have formed:

Google

These guys know their stuff.  Their websites and apps load fast, seldom commit serious design errors, and simply “just work.”  Sometimes the design feels a little toned down, maybe even a little boring, but I don’t mind because I’m trying to get something done, and, with Google, I’m usually successful.  I tend to get frustrated quickly when things go slowly, and Google rarely, if ever, goes slowly.

The software quality at Google is noticeable to me, to the extent that I’m very likely to visit them again, if only because I’m reasonably assured that the experience won’t be frustrating.

Conclusion?  You’ll re-visit Google without reservation.  Their “absence of slowness” is extremely addictive.

Yahoo

Yahoo’s website and app quality has bright spots that I notice.  Sometimes it’s a cool navigation scheme, or perhaps an elegant photo slider.  However, all too often, I notice it too much.  That is to say, the cool things get in the way.  Worse yet, very often the pages don’t render correctly on certain devices that I use frequently, and this affects usability.

Software quality at Yahoo is never so bad as to significantly hinder my progress, but flawed enough that I notice it.

Conclusion?  You are likely to re-visit Yahoo only if you end up there, and you’ll be reluctant otherwise.

Microsoft

Microsoft is a large, sprawling company, with years of legacy support to contend with.  And when I use their software, it sure does feel that way.  With the notable exception of the Xbox One, and certain newer, developer-facing sites, Microsoft’s software seems older and cluttered.

To be fair, I do appreciate the smartness of their approaches, and the simple appropriateness of their designs – clearly decisions made after several, surely impressively functional, corporate meetings.

But pages sometimes load too slow, and their navigation is almost always hindered by some sort of annoying addition – usually these changes seem to matter more to the company’s corporate direction than to me, the user.  Their OS software leaves the same impression – integration of mobile and desktop designs may be important to Microsoft strategically, but it’s a headache for me.

Conclusion?  You are likely to engage Microsoft only if you absolutely must; say, because your Windows desktop directs you to.

Facebook

The software quality at Facebook is good, to be sure, and it seems to serve the intended experience well.  But the design quality – well, very often it leaves me “navigationally confused.”  The saving grace is that it doesn’t change often.  But with each new addition, I get anxious.  Are these auto-play videos going to be the thing that ruins Facebook for me?  I always feel like I’m barely hanging on with these guys.

Conclusion? I venture that, if you didn’t sort of “need” to use it so much, you would be less likely to return to Facebook.  But then again, it’s so stable right now, you usually return without much reservation.  A mixed bag.

Other Big Guys

Then there’s the outlier big companies such as major telecoms, AOL/Time, IBM, SAP, and Oracle.  Sad to say, but I usually cringe when I use them.  It’s get-in-get-out time.  Many of these guys run websites that worked perfectly at first, but over the years they’ve been hit with so many browser upgrade issues and unexpected content additions that they appear to suffer more craters than the moon.  I’m left with the impression that either nobody at the company cares, or worse, that they care but can’t escape their own internal dysfunctions.

While some of these companies are large, it seems they don’t spend enough money on software staff.  Or they can’t get good talent.  Or they’ve outsourced to Timbuktu and have completely lost focus.

Conclusion?  Not only are you reluctant to return, somewhere in the back of your mind, you flag the company as “marked for extinction.”

Other Small Guys

The best and worst software quality is at the small companies.  Sometimes you find the best and the worst at the same time.

Consider the case of a website for a low-end home telephone provider that was recently upgraded.  It looks beautiful, with all the nice touches, flat design, and latest responsive techniques.  Top quality, it seems.  It’s nothing like what they had before, so a real turnaround.

But then I loaded the page up on my old XP machine at home, where I have an admittedly outdated IE7 running.  The page was not just un-pretty, but it was so scrambled up that it was literally unusable.  If I had owned no other computer, they would have lost the sale.

They would have been better off simply disabling CSS for older browsers, but instead, this world-class company decided to dump 3%-5% of its users off at the curb.  Even when I loaded the page on my iPad there were issues with the margins.  I imagine these guys hired some hot design company, but then never really followed up after that.

Small guys sometimes use all the latest innovations – we’re talking the full page graphics, the parallax effects, and the CSS3 animations.  These innovators are free to quickly change design to the latest trends, or even on a whim.  So you can really have some fun with them, if you’re in the mood for it, but all that innovation can otherwise be downright annoying.

Conclusion?  You will still visit them, usually because they are esoteric to the task at hand.  You’ll tolerate the bells an whistles since you won’t spend much time there anyway.  If it doesn’t work on one browser, you’ll just switch browsers, or even computers, so you can get something done. But your lasting impression of the company is that they are a mess internally, and they might be gone tomorrow.

So what’s my overall impression?

Well… that software quality certainly matters.  No surprise there.  While the effects of quality, good and bad, are sometimes only subtle, they are absolutely critical to business operations.

My advice? Spend as much money as possible, hire as many talented people as you can, and keep a vigilant watch and focus over every aspect through the design, construction, and maintenance phases.  OK, easy to say…  But on the limited budgets that we all face, what should we really do?

Before doing anything with software, define a very, very limited scope.  Then redefine it.  Reduce it.  Again and again.  Ensure that everything you’re doing is absolutely critical to the core business strategies, and not a single thing more.  You’re an editor in a cutting room for a movie that’s gone too long. You have to cut three hours down to two.

In software, we sometimes speak of a “minimum viable product.” That concept describes the process of releasing only a core set of features to the market, in order to determine market response. In our context, we are talking about something similar, but not quite the same. The website or app you’re creating should minimally reflect your business, but also enhance it. You can’t put something out there, and then just dump it when it doesn’t work out. The user will remember. You need the “minimal positive impression” product.

Why is scope so key?  Because with a small scope, you can spend as little money as possible, and can hire as few talented people as possible.  You will still have to keep a vigilant watch and focus over everything. Sorry.

“Decide what NOT to do, and be RUTHLESS in the execution of that decision.”

Finally, if you can’t even find the money for your already pruned-back requirement set, then you need to consider cancelling the software development altogether.  Don’t put bad quality out there.  It will become a headwind to your business, with a momentum of its own that will be extremely difficult (and costly) to repair.

Best of Luck!

- Mark

The post Thoughts on Software Quality appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2014/04/08/thoughts-software-quality/feed/ 0
Expando properties! https://wp.dynamicglobal.com/2013/08/04/expando-properties/ https://wp.dynamicglobal.com/2013/08/04/expando-properties/#comments Sun, 04 Aug 2013 15:05:31 +0000 https://wp.dynamicglobal.com/?p=690 It’s such a cool name… I had to look it up. Apparently since the early days of IE, there were are sorts of issues with attaching arbitrary attributes (of your own) to DOM elements. Well, not unless you use…Expando….ACTIVATE! Zap! Expando

The post Expando properties! appeared first on Dynamic Global.

]]>
It’s such a cool name… I had to look it up.

Apparently since the early days of IE, there were are sorts of issues with attaching arbitrary attributes (of your own) to DOM elements. Well, not unless you use…Expando….ACTIVATE! Zap! Expando properties!

https://msdn.microsoft.com/en-us/library/ms533747.aspx

So anyway, I discovered this because jQuery mentioned it. Seems that even with expandos, you still can’t really attache whatever you want.  So the folks over there gave us this wonderful “data” thing, so you don’t have to worry much about dear old, old, dysfunctional IE.

https://api.jquery.com/jQuery.data/

 

The post Expando properties! appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/08/04/expando-properties/feed/ 0
Get off my lawn! (.com) https://wp.dynamicglobal.com/2013/07/31/get-off-my-lawn-com/ https://wp.dynamicglobal.com/2013/07/31/get-off-my-lawn-com/#comments Wed, 31 Jul 2013 23:27:56 +0000 https://wp.dynamicglobal.com/?p=671 These guys employed some good CSS for the new “Geezer” website. “And yes, it’s a bunch of guys that dress up as old men, pass out Werther’s Originals candies, and rock the mike while playing covers and mash ups of

The post Get off my lawn! (.com) appeared first on Dynamic Global.

]]>
These guys employed some good CSS for the new “Geezer” website.

“And yes, it’s a bunch of guys that dress up as old men, pass out Werther’s Originals candies, and rock the mike while playing covers and mash ups of songs by Weezer, Beastie Boys, and a host of others.”

Aw.. reminds me of my cooler days when I did a site for Scottish band “Mogwai”.. Oh well, can’t live in the past…

Article: https://css-tricks.com/making-websites-for-geezers/
Website: https://getoffofmylawn.com/

Yes. that’s get off my lawn dot com.

The post Get off my lawn! (.com) appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/31/get-off-my-lawn-com/feed/ 0
Chrome too slow? https://wp.dynamicglobal.com/2013/07/19/chrome-too-slow/ https://wp.dynamicglobal.com/2013/07/19/chrome-too-slow/#comments Fri, 19 Jul 2013 16:08:15 +0000 https://wp.dynamicglobal.com/?p=636 Hard to believe it, given the resounding success of Google so far, but my Chrome browser on Windows is giving me trouble. Hangs up forever finding local DNS. I’m using a HOST file entry, which is I’m sure part of

The post Chrome too slow? appeared first on Dynamic Global.

]]>
Hard to believe it, given the resounding success of Google so far, but my Chrome browser on Windows is giving me trouble. Hangs up forever finding local DNS. I’m using a HOST file entry, which is I’m sure part of the problem.

A long search on the internet finds….. “There is no option to disable DNS prefetching” “Google does not want you to do it” “Open up Firefox instead”

Frown.

The post Chrome too slow? appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/19/chrome-too-slow/feed/ 1
Remove special characters from WordPress slug https://wp.dynamicglobal.com/2013/07/12/remove-special-characters-from-wordpress-slug/ https://wp.dynamicglobal.com/2013/07/12/remove-special-characters-from-wordpress-slug/#comments Sat, 13 Jul 2013 02:03:27 +0000 https://wp.dynamicglobal.com/?p=597 To create the “slug” (the URL-friendly version of your post’s title) WordPress is supposed to “sanitize” the title of your post. However, even though it escapes special characters using the regular % methods, they seem to worm their way back

The post Remove special characters from WordPress slug appeared first on Dynamic Global.

]]>
To create the “slug” (the URL-friendly version of your post’s title) WordPress is supposed to “sanitize” the title of your post. However, even though it escapes special characters using the regular % methods, they seem to worm their way back into the slug (As of WP 3.5.1)

This is a very quick and dirty, brute-force hack, kludge, whatever you want to call it. It removes the % from any slug, leaving all the non-% ugliness intact. But it does work.

In /wp-includes/formatting.php:

function sanitize_title_with_dashes($title, $raw_title = '', $context = 'display') {
...
...
/* Near the end, add this one line: */
$title = preg_replace('[\%]', '', $title);
...
$title = trim($title, '-');
return $title;
}

The post Remove special characters from WordPress slug appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/12/remove-special-characters-from-wordpress-slug/feed/ 0
Amazing CSS tricks – Pure CSS Light Beams https://wp.dynamicglobal.com/2013/07/12/amazing-css-tricks-pure-css-light-beams/ https://wp.dynamicglobal.com/2013/07/12/amazing-css-tricks-pure-css-light-beams/#comments Sat, 13 Jul 2013 01:45:16 +0000 https://wp.dynamicglobal.com/?p=585 This guy has made something really cool with CSS, it’s a couple of wavy colored lines. https://codepen.io/mrmartineau/details/IrBiA Actually this whole website is chock full of cool CSS stuff. Check it out! https://codepen.io/

The post Amazing CSS tricks – Pure CSS Light Beams appeared first on Dynamic Global.

]]>
css-light-beams1

This guy has made something really cool with CSS, it’s a couple of wavy colored lines.

https://codepen.io/mrmartineau/details/IrBiA

Actually this whole website is chock full of cool CSS stuff. Check it out!

https://codepen.io/

The post Amazing CSS tricks – Pure CSS Light Beams appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/12/amazing-css-tricks-pure-css-light-beams/feed/ 0
Dynamic software is hard https://wp.dynamicglobal.com/2013/07/11/dynamic-software-is-hard/ https://wp.dynamicglobal.com/2013/07/11/dynamic-software-is-hard/#comments Thu, 11 Jul 2013 17:11:29 +0000 https://wp.dynamicglobal.com/?p=547 Working on some very difficult, extremely dynamic SpeedGUI design lately. Came accross this quote: Wikipedia: The authors admit that delegation and parameterization are very powerful but add a warning: “Dynamic, highly parameterized software is harder to understand and build than

The post Dynamic software is hard appeared first on Dynamic Global.

]]>
Working on some very difficult, extremely dynamic SpeedGUI design lately. Came accross this quote:

Wikipedia:

The authors admit that delegation and parameterization are very powerful but add a warning:

“Dynamic, highly parameterized software is harder to understand and build than more static software.” (Gang of Four 1995:21)

Uh, yeah.

The post Dynamic software is hard appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/11/dynamic-software-is-hard/feed/ 0
Hot day in Texas today! https://wp.dynamicglobal.com/2013/07/10/hot-day-in-texas-today/ https://wp.dynamicglobal.com/2013/07/10/hot-day-in-texas-today/#comments Wed, 10 Jul 2013 20:19:09 +0000 https://wp.dynamicglobal.com/?p=542 Whew! It’s Mostly Cloudy and 100F outside here at DG in Frisco, TX.

The post Hot day in Texas today! appeared first on Dynamic Global.

]]>
Whew! It’s Mostly Cloudy and 100F outside here at DG in Frisco, TX.

The post Hot day in Texas today! appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/10/hot-day-in-texas-today/feed/ 0
Best worst website design https://wp.dynamicglobal.com/2013/07/02/best-worst-website-design/ https://wp.dynamicglobal.com/2013/07/02/best-worst-website-design/#comments Tue, 02 Jul 2013 19:16:06 +0000 https://wp.dynamicglobal.com/?p=450 They say this is the best design on the internet that uses a “worst design” theme. Get it? Well check it out. The mobile version is good too… Enjoy! CAR LEASING CHEAP LEASE CARS SALES CAR LEASING CHEAP BUSINESS HIRE

The post Best worst website design appeared first on Dynamic Global.

]]>
They say this is the best design on the internet that uses a “worst design” theme. Get it? Well check it out. The mobile version is good too… Enjoy!

CAR LEASING CHEAP LEASE CARS SALES CAR LEASING CHEAP BUSINESS HIRE DEALS.

The post Best worst website design appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/07/02/best-worst-website-design/feed/ 0
DNS puzzle https://wp.dynamicglobal.com/2013/06/21/dns-puzzle/ https://wp.dynamicglobal.com/2013/06/21/dns-puzzle/#comments Fri, 21 Jun 2013 23:41:21 +0000 https://wp.dynamicglobal.com/?p=376 Admittedly I dont know much about DNS zones, but this one really stumps me. I registered a domain at hosting company A. But I want to use that domain as the main domain in company B servers, with private nameservers

The post DNS puzzle appeared first on Dynamic Global.

]]>
Admittedly I dont know much about DNS zones, but this one really stumps me. I registered a domain at hosting company A. But I want to use that domain as the main domain in company B servers, with private nameservers of my own at B to boot.

So i created two subdomain entries over at hosting company A and pointed them to my nameservers, called ns1.myhost.com and ns2.myhost.com (not my real host name, obviously). Now I find that any domain that I’ve set up to use my nameservers, at any hosting company, is working fantastically. Also, I could create subdomains of my main top level domain, still over at company A, and using the nameservers they work just fine. Over at the company B, I can control all the DNS stuff, no problem.

Well, today I needed to get the root of the top level domain (mydomain.com) working at B (for email), and so I tried to point it over from company A to company B too, that is, point the top level domain directly to my IP at company B.  Immediately that blew away my nameserver ns1 and ns2 entries, and all my sites that used them were inaccessible.

Customer service time.

Well, they told me to just set up the top level domain to use my new nameservers ns1.myhost.com and ns2.myhost.com.  Ok, but isn’t that a circular reference?  I mean, how will the DNS systems look up those nameservers, when the ns1 and ns2 names are underneath the top level domain? Won’t it try to go resolve them at the top level domain entry and go in circles? After all, the nameservers did stop working when I re-pointed the top level, so it seems to indicate so.

Well I did it anyway, and it worked.  And I have no idea why.  Will it stop working after 24-48 hours, once the ‘net catches up with all my name changes?  Maybe, but probably not.  I think there is some “magic” built in to DNS systems that I dont yet understand.  Will have to keep researching I guess…. :P

 

The post DNS puzzle appeared first on Dynamic Global.

]]>
https://wp.dynamicglobal.com/2013/06/21/dns-puzzle/feed/ 1