Category

Development

Category Archives: Development

Web Technology Essentials That Many Miss

You probably know that web technology is constantly changing.

Most businesses have a website. Most businesses want their website to be an effective tool for generating leads, sales, or reinforcing their brand.

Most businesses fail. There are a few winners. Those winners enjoy most of the benefits of web marketing.

So what do the winners know that most don’t?
1. Technology matters
2. Branding matters
3. Story matters
4. Plan Matters
5. Measurement Matters

Technology matters
You need to select your technology tools – your tech stack. Tools like WordPress for your CMS (Content Management System) and Infusionsoft for your CRM/Email marketing system.

You need web pages to load quickly, so how you build your web pages matters. Page markup matters. The WordPress theme you use matters. Where you host matters. First bit server response matters. You need SSL, SPF, DKIM, DMARC and more.

You need a technology partner that can help make decisions and implement these decisions on selecting your web tech and hooking it all up.

Branding Matters
You need to select your brand and it’s message. If you want to be a distinctive higher-end brand, that means a great logo and custom font. If you are an everyday value brand, clipart, and standard fonts will work just fine. Keep in mind, the colors you use matter.

You need a branding partner that can help you make decisions on brand and execute on the vision.

Story Matters
People think in stories. Stories that grab your attention. Stories that share hard-won insights. Stories that stir the soul of what is possible.

Most websites should be a story that unfolds before you and engages your attention. People should feel emotions and think thoughts. Emotions sell.

You need a partner that can help you bring your story to your people.

Plan Matters
Web marketing is hard to do. Most businesses do it poorly. Why? They have a bad plan or no plan – then they execute it poorly. They don’t measure their successes and failures. They don’t know how to learn to do better.

You need a partner that can analyze your customers and their needs, look at your competitors and then create a plan that can win.

Measurement Matters
Almost no one wins out of the box. To be successful at web marketing, you need measurement to figure out what is working and what isn’t working. Then you adapt your way into success.
In our long experience with digital marketing, many businesses hook up analytics (shame of the few who don’t even hook up Google Analytics), but very few look at their analytics account reports to see what is working and what isn’t.

You need a partner that can measure web activity, understand what is working and what needs to change, and can implement these improvements. Meet your partner today

Website Need Some Love?

It shouldn’t surprise you that the average website isn’t an effective tool for it’s business.

It might have branding problems. The image and impression that you give of your business might not resonate with your ideal customers.

Even if you don’t send most of your leads to your website or sell on it, in today’s world, people will visit your website and check you out. If there is a disconnect between your website experience, and the experience of your other sales and marketing touch points, it could be a show stopper.

Follow these 4 steps to audit your website and find out if your site is a star or a show stopper:

1) How long are people on your website? 2 minutes? 3 minutes? The longer, the better. 15 seconds on your website means your site is a show stopper. You can see this in Google Analytics.
2) How many pages are people viewing? 2-5? Fine. 10? Great. 1 page? Show stopper.
3) What is the story someone understands about your business after 15 seconds, 30 seconds, 2 minutes? Is the information and the way that it’s expressed coherent with what you say face to face?
4) What are you discussing on your website? What topics? What emotionality are you using?

We can help you uncover quick fixes to improving your brand and making your website a star that speaks to your ideal customer. Get expert advice today.

You don’t want average…you want extraordinary.

 

Why I Made a Custom Yeoman Generator

Generator-ninthlink is a Yeoman generator used to scaffold static web applications. By running the command “yo ninthlink” in the terminal, we can generate a project’s directory structure, configuration files, boilerplate markup, and a great number of tools for speeding up the development process and ensuring the final product is lightweight.

I initially set out to build this tool from scratch, but then realized that an excellent generator already existed. This generator, created by the Yeoman team, had many of the features I was looking for: minification (css, js, and image assets), BrowserSync, Sass compilation, etc . . . and it appeared to be maintained regularly.

Originally, my intention was simply to get UnCSS working with Yeoman. UnCSS is a clever invention: it detects which CSS rules have no corresponding declaration in the markup, and then strips these out. When my initial tests of this integration proved successful, I assumed there to be no reason to make further changes. This assumption turned out to be false for a few reasons:

  1. Things need to be maintained.
  2. Things can always be better.
  3. Alex has a lot of ideas.

I’ve accepted the fact that this project will be ongoing. We’ve used this generator quite a bit recently, so I’m not bothered at all by this unforeseen increase in complexity. It’s not perfect yet, and something will definitely break in the future. But that’s all fine and well because even if we eventually discard ALL of this work, we will have learned something. At this point in time, however, the project paradigm exemplified by Yeoman (scaffolding tool + build tool + package management) seems to be quite powerful.

For the record, here is a list of modifications I’ve made to the original generator:

  • UnCSS (and custom configuration to eliminate conflicts with Bootstrap)
  • re-integration with Travis-CI (for automated testing)
  • the ability to choose between Google Tag Manager and Google Analytics
  • Bootstrap linting
  • the addition of a pre-configured .htaccess file
  • added variables for easier maintainability
  • custom Gulp configuration all-around, according to our needs at Ninthlink

Before signing off, I need to emphasize that Alex, the senior developer here at Ninthlink, has played a big role in shaping the direction of this project. He’s allowed me to break a great number of websites, and then allowed me to spend time fixing almost as many. Also, please do yourself a favor and check out out the Yeoman project, its contributors, and related open-source dependencies. A huge variety of Yeoman generators exist, so you might want to perform a quick search here to see if  they have something you need.

Thanks for reading.

 

Programming and mathematics

The large number of job opportunities in the tech industry has caused many people to wonder whether programming requires knowledge of mathematics. The answer, of course, depends on the industry in question; there is no reasonable way to answer such a query without first being clear about what type of programming we’re discussing. The same can be said of mathematics. It’s quite easy for some to make claims related to mathematics as a whole, but it turns out that arithmetic is not calculus . . . and calculus is not set theory. Given the fact that I am a web developer (and indeed, quite new to the industry), and given that I haven’t taken a single course in mathematics beyond calculus, I will rephrase the question like this: “Does web development require knowledge of advanced mathematics?”

The short answer is NO. A more complete answer, at least from my fairly limited perspective, is this: a career in web development will typically require only limited use of basic arithmetic, but an understanding of more general mathematical concepts might give you a decent advantage. I suspect that the motivating force behind this question is related to the widespread intuition that mathematics is difficult (or at least outrageously boring). Even if we were to somehow purge all of mathematics from the act of creating a program, we would be left with a great deal of non-mathematical concepts—concepts related to logic and concepts unique to programming—that can be fairly difficult to grasp.

I don’t intend to embark on an advanced study of the relationship between mathematics, logic, and programming. That would be outrageous and boring and our brains would explode and you’d get all mad at me and stuff. My tentative opinion here is that programming—in practice—relies more on logic than it does on arithmetic. But I’m not sure how I feel about this. A number of philosophers and mathematicians have attempted to reduce all of mathematics to logic. This exactly didn’t pan out the way they expected. Maybe it’s impossible. Maybe these guys just got lazy. I don’t know how this baloney works, but apparently we CAN reduce arithmetic to logic. If this is true, if arithmetic simply is logic, then we probably need to rephrase the question yet again.

It’s obvious that all three disciplines, however interconnected or dissimilar they truly are, rely on shared concepts. The notion of truth-functional connectives and Boolean values allegedly appear in first-order logic and programming, but not in mathematics. But then there’s Boolean algebra. And then you wonder what set theory even is, and what kind of wrench those guys are preparing to throw into your pretty, little theory. Operator scope and well-formed formulas (or “valid syntax”), on the other hand, are applicable to all three domains. Type coercion and object orientation appear to apply only to programming. To confuse the issue even more severely, there are examples of shared terminology used to communicate different concepts. The terms “argument” and “conditional statement” are deployed rather frequently in formal logic and programming, but in different ways. And then there’s a function in mathematics and a function in JavaScript. Are these really the same type of thing? Does it matter?

Probably not.

Recall that we started with a question. We then attempted to clarify that question but got stuck in some kind of theoretical swampiness and started losing our grasp on the original problem. Right now we’re climbing out of that nonsense and I am encouraging the adoption of a practical solution: since first-hand experience appears to be the most reliable way to gauge interest level in and the perceived difficulty of some activity, we ought to stop entertaining ourselves with an endless train of questions. Instead, we should take chances and try things—even things that appear to be too hard. Find a tutorial. Pick up a book. In my opinion, autonomous effort and experimentation beats theorizing and advice every time. Even if you end up hating programming, perhaps you’ll learn something.

Good luck and happy computing!

Ninthlink Creates Product Demo for CES 2016

Ninthlink designed and built a GUI (Graphical User Interface) for TP Link, one of the world’s leading providers of networking solutions for both Home and Office use, to support a product demo during CES 2016.

At this year’s CES, TP Link unveiled it’s Talon AD7200, the world’s first true tri – band router to market, allowing users to stream on multiple devices, share an entire 4k HD movie in minutes, and send thousands of photos and songs from one device to another in minutes.

The GUI, displayed on a big screen at the TP Link exhibition, showcased a real-time speed comparison of transfer rates for various file sizes and media, highlighting the blazing fast speed of the Talon AD7200 compared to existing connection speeds, which could be paused on demand to play an integrated technology demo video.

tp_link_GUI