Sunday, July 31, 2016

6 Ways To Use Social Media To Get More Backlinks



Social media is seen by a lot of businesses as simply “nice to have,” and for some companies this is true. It might not be the greatest medium to spend the largest percentage of their digital marketing budget, but when it comes to search engine optimization, a certain amount of significant involvement will often correspond well with the site’s rankings. Is this just because social media-conscious brands are also often putting out a lot of content, which is a ranking factor in itself? Perhaps! But though the links on the social platforms themselves aren’t weighted highly on search engines, en masse they do serve as one indication of a website’s relative authority. Not only that, but when you use social media to get your message and your brand out into the world, you can earn links from others who wield websites and those links do matter significantly for SEO.

So how do we use social media to get more links?

by Guest Author via Digital Information World

Camden Town Brewery

A new site for the expanding brewery that puts their range of great beers front and centre, using bold design, custom iconography and interchangeable page modules.
by via Awwwards - Sites of the day

Saturday, July 30, 2016

Typography.js : JavaScript Toolkit for Beautiful Typography

A powerful toolkit for building websites with beautiful typography.Typography.js provides a vastly simpler way to define and explore typography designs.

You provide configuration to the Typography.js JS api and it uses its Typography engine to generate CSS for block and inline elements.

The post Typography.js : JavaScript Toolkit for Beautiful Typography appeared first on jQuery Rain.


by Admin via jQuery Rain

jQuery Squeezing Header Plugin

A jQuery plugin for squeezing your header on scroll down.

The post jQuery Squeezing Header Plugin appeared first on jQuery Rain.


by Admin via jQuery Rain

Cirq

Cool climates and distinctive soils – what the Russian River Valley is known for – is what CIRQ knows best. Estate Pinot Noir from Michael Browne.


by csreladm via CSSREEL | CSS Website Awards | World best websites | website design awards | CSS Gallery

Oh, the Lengths We’ll Go: Extreme Stories on Getting the Job Done

A stressed dog handcuffed to his workstation

Freelancers, entrepreneurs, and other self-governing creatives may be the envy of their nine-to-five peers, but being your own boss can put a strain a different set of muscles. With no one to manage your schedule and no co-workers to pick up the slack, these tetherless titans must sometimes go to extreme lengths in order to get things done.

Here are a few examples.

Eric Brantner

Eric Brantner

Role: Freelance Copywriter, Founder of Scribblrs

When launching my last site, Scribblrs.com, my team was waiting for me to provide the final piece of the puzzle. My job was to write the copy for our main landing pages. Everything else was there waiting, but I kept hitting my head against a wall. Not only that, other projects kept getting in the way.

Finally, it got so ridiculous that I needed to do something drastic. That’s when I went to my wife. I convinced her to agree that all sex would be cut off until I finished the copy. After all, that time with her is one of the most valuable things there is in my life. And dammit if it didn’t work like a charm. You better believe I fired out that copy within the next 24 hours.

Definitely appreciated my wife playing along with that one!

Melody Van De Graaff

Melody Van De Graaff

Role: Freelance Web Content Writer & Blogger

I have been working as a freelance web content writer since December 2015. Right when I started, I got mono, and had it for three weeks. This was right when I was starting to get samples and put my website together.

For those who haven’t had mono before, it is one of the most dreadful experiences. Everything hurts, but especially your armpits, which makes any sort of movement incredibly painful. Your body shuts down and you find yourself falling asleep doing the simplest things. Most people with mono sleep for 16–18 hours a day because their body is so exhausted.

But I made myself stay awake, even though I wanted to do nothing more than sleep. I practiced writing blog posts, reached out to my network, and starting forming relationships. I even did client work while I was ill.

I now have five clients and no longer have to work a real job. I’m continuing to build my business and get more clients.

Gillian Small

Gillian Small

Role: Owner of Gillian Small PR

I had to get an impacted wisdom tooth removed last November, but I had a conference call scheduled for a few hours after the appointment, so I couldn’t take any strong medicine during the process. Needing to distract myself from the impending pain, I decided to focus on catching up on my e-mails while sitting in the chair.

Continue reading %Oh, the Lengths We’ll Go: Extreme Stories on Getting the Job Done%


by Joshua Kraus via SitePoint

8 Common Mistakes That Get Developers Fired

A fire

He’s at work and he’s looking at porn.

A tech employee, who I’ll call Alan, was watching anime porn at work. Not satisfied with simply watching it, he decided it was time to start printing his porn — on a color laser printer, no less.

He printed it on transparencies which, as it turns out, weren’t compatible with the laser printer.

They melted inside the printer.

Alan has just ruined a very expensive new printer. Then to make matters worse, he takes the printer apart in a misguided attempt to try and fix things himself. He’s voided the warranty.

After he was told specifically not to.

Naturally, He Was Fired for His Mistake

But it wasn’t for any of the mistakes I just mentioned. He definitely made a mess of things; he creeped out his co-workers, destroyed company property and cost his employers a lot of money.

He was fired because he lied about it.

Don’t get me wrong: you can absolutely be fired for making these mistakes. Most don’t question it when it happens. You can’t expect to do what our friend “Alan” did here and expect to keep your job.

But that’s the thing. Alan did.

If you’re fired for making these mistakes, it’s typically a smoke screen for something else. That something else is the problem which leads us to the first mistake.

Mistake 1: Using Poor Judgment

Dustin Curtis wrote a blog post, about the American Airlines website, complaining about the poor user interface design.

The last thing Dustin expected was a response.

But that’s what he got. He received an email from a designer at American Airlines. The front-end designer admitted there were some issues to work out.

He explained why creating good design at large companies was a tricky ordeal.

Amazing, right?

Wrong. Another case of bad judgment. As it turns out, American Airlines didn’t want their designer to be open with customers.

They fired their designer.

The designer’s intentions were noble, honorable and admirable. Let’s say American Airlines is at fault. Is he in a position to authorize or provide compensation? Can he actually determine fault?

He needed to ask more questions: was this due to user error? Browser error? Is there a software conflict here?

  • Did this open American Airlines up to a lawsuit?
  • Would this affect any ongoing legal disputes?
  • What causes these problems?
  • Was this an admission of guilt?

This designer made an assessment before he had all of the facts.

Using “poor judgment” isn’t about simply making bad decisions. It’s a failure to think about the company you work for as your company. And your co-workers as your people.

When developers approach work this way, it changes their decisions. It’s not just a bad decision. It’s a decision that affects their co-worker’s ability to feed and take care of his family.

Poor judgment comes in many forms.

  • Spilling company secrets to the wrong person
  • Misusing company property
  • Humiliating your co-workers or boss
  • Overstepping your bounds

This designer could have asked Dustin more questions about his experience. He could have empathized with Dustin. Instead, he overstepped his bounds.

Mistake 2: Using Dishonesty & Scheming

You’ve probably heard the story. A Nissan app developer was busted copying code from Stack Overflow. The verbatim Stack Overflow showed up in a recent update.

Nissan steals from Stack Overflow

Yikes.

Most developers are honest, hardworking individuals. We work incredibly hard to produce great code. But our industry has a dirty secret.

We copy and paste code from the internet.

We’ve all done it.

We have a deadline to meet and we’re really stressed out. We need a quick and easy way to get things done. So after trolling Stack Overflow or CodePen for a few hours, we find what we’re looking for. A quick copy and paste and we’re on our way.

No-one’s the wiser, right?

Actually, no. As a web professional you know privacy is dead. Our industry is ultra-competitive. Journalists, bloggers, even your co-workers are looking for a story, a way to get ahead.

That angle could be a mistake you’ve made, a momentary lapse in judgment. An innocent, but dishonest mistake could be…

  • Copying and pasting or stealing code (plagiarism)
  • White lies about people, work or agreements
  • Accessing or sharing material you don’t have permission to.
  • Using company resources for your own purposes in a misleading way.

Or something else entirely. The mistake doesn’t have to be big either. A tiny mistake is enough to derail your career. When that happens and developers are confronted they make another mistake…

Mistake 3: Using Defensiveness to Relieve Pressure

Three developers at an ad agency had an important deadline to meet. They needed to launch their client’s website in time for a major marketing push.

They failed to meet that deadline.

The scope of the project continued to grow, adding more and more features to their already-tight deadline. Which wasn’t their fault at all.

What was their fault was the fact that they accepted these changes without saying anything, leading to the missed deadline.

As human beings, we’ve all been there. We’re blamed when something goes wrong. We feel attacked so we stand up for ourselves.

Only that’s not what happens.

What actually happens is we see a problem developing. We do nothing. The problem gets worse. We do nothing. Only when we’re hit with a ton of emotional pressure do we decide to act. Which usually means we use blame and excuses to take some of that pressure off, using phrases like:

  • “Yes, but…"
  • “What about when you…"
  • “At least I’m not…"
  • “You’re one to talk!"

Going on the offensive and attacking is a clear indication of defensiveness. Once that happens we’ve crossed the line. We’ve made it harder for others to hold us accountable, to have healthy conflict.

At first most people put up with it. They tolerate or ignore it. A pattern of defensiveness creates distance in the relationship, with the developer losing their job when all patience is gone.

Mistake 4: Stonewalling & Blockades

Picture this.

Your company has just won a new client. Your boss asks you to take the lead on this project. The client wants something specific, such as developing a site using Bootstrap. Your co-workers ignore him. They say nothing.

Then, without talking to your boss or the client, they go ahead and use Foundation instead.

Your boss, the client — they’ve just been stonewalled. I’m oversimplifying here but you get the point.

Webster defines stonewalling as:

to refuse or fail to answer questions, to do what has been requested, etc. especially in order to delay or prevent something.

And it’s a practice that’s incredibly common in our industry.

There’s a small segment of the web development community that handles work this way. Boss asks for A, developer gives him B. Ask for advice, get a blank stare in reply.

It’s a passive-aggressive way to bully someone. It can be as simple as ignoring your co-workers or your boss and as subtle as leaving you out of meetings and events.

Let’s say a co-worker did that to you. What would that look like?

  • They make eye contact with everyone, except you
  • Shaking hands with everyone else except you
  • Excluding you from events, get-togethers and meet-ups
  • Leaving you out of the communication loop

It’s easy, almost natural to exclude non-engineers. But a pattern of stonewalling slowly erodes relationships. If you’re outed as the cause, you’re the first to go.

Continue reading %8 Common Mistakes That Get Developers Fired%


by Andrew McDermott via SitePoint

Motive Apartments

Motive Apartments

Gorgeous use of parallax scrolling, colorful gradients and crisp typography to give a professional first impression of the 'Motive Apartments' in Perth, Australia. The One Page website features smart elements like a floor plan explorer, a "the perfect lifestyle" infographic and a slick construction progress bar (with an impressive responsive adaption). Lovely touch how the gallery overlay features the same background gradient consistent with the rest of the site. Last little shout to how they've only used one font family, Open Sans, but mixed up the weights and styles so well that it doesn't feel like one font. Excellent work this by Humaan.

by Rob Hope via One Page Love

Reddit Lets Brands Promote User Posts: This Week in Social Media

gd-twism-7-30-16-600

Welcome to our weekly edition of what’s hot in social media news. To help you stay up to date with social media, here are some of the news items that caught our attention. What’s New This Week Reddit Announces New Ad Offering: Reddit introduced Promoted User Posts, a new ad offering that gives marketers the [...]

This post Reddit Lets Brands Promote User Posts: This Week in Social Media first appeared on .
- Your Guide to the Social Media Jungle


by Grace Duffy via

friendly projects

Mr. milu presents its new brand in a completely innovative way. The brand is inspired by the different frameworks that allow you to program fragment and insert it into the matrix code development.
by via Awwwards - Sites of the day

Friday, July 29, 2016

How to Write for Your Audience: Step-by-Step Guide

How to Write Awesome Content for Your Audience: Step-by-Step Guide

You’ve been working on an awesome piece of content for a week already and it couldn’t have been better - you’ve done a very deep research, processed tons of data, put together a gorgeous-looking infographic, and sprinkled your post with juicy language.

“It’s going to generate so much buzz that Google will rank my article in top 10 within a few hours”, - you thought.

You hit “Publish” and Bam!

Just 25 minutes later you get 7 fresh comments!

You can’t hold your excitement anymore as you start reading the comments just to find out that they were placed by someone called “essay” and contain some generic compliment about how great and useful your article was.

But zero comments from real people, though.

Does it sound familiar?

Probably, yes.

How could it happen if you put so much time and effort into this incredible piece of content?

Probably, because you wrote on the topic interesting to YOU and not to your audience.

Let’s take a second and think why visitors come to your site after all.

Are they in love with you as a writer? Could be, but more often than not, they probably don’t even care how great your writing skills are.

by Guest Author via Digital Information World

Clipped SVG Slider

Clipped SVG Slider is a simple slider, with morphing preview images animated using SVG properties.


by via jQuery-Plugins.net RSS Feed

Animo

opl-small

'Animo' is a multi-page WordPress theme with a One Page website layout option. This theme has a left navigation that (smooth) scrolls through the sections of the long-scrolling Single Page website. Features include hover sensitive parallax effects, 33 useful shortcodes, compatibility for other languages, accommodation for video, a portfolio section with big pop-up images and a fullscreen menu overlay to skip to the sections. 'Animo' also includes the Slider Revolution plugin (valued at $19) and the Visual Composer plugin (valued at $34) to enable page building functionality.

by Rob Hope via One Page Love

Understanding Docker, Containers and Safer Software Delivery

Databases, dependencies, cron jobs … Applications today have so many layers that it isn't a surprise when moving things takes a lot of time. But it doesn't have to be that way. Today, you can ship software to virtually any environment, and be up and running in seconds. Enter Docker.

Software delivery

Delivering software used to be easy. The hard part was programming, but once you finished you would just handle the product, maybe fix some bugs, and that'd be all.

Later, with the "LAMP stack" (Linux, Apache, MySQL, PHP) --- which was widely supported by hosting companies --- things got slightly more complicated, but were still manageable. You could deliver dynamic sites linked to databases and set everything up via control panels.

But in more recent times, the scenario has gotten even more diverse and demanding, as new technologies have broken in. NoSQL databases and Node.js, programming languages like Python and Ruby, have gained in prominence. All of these and more have opened lots of possibilities, but now delivering software is not so easy anymore.

Implementation

Applications have become hard to implement. Even if you get yourself a dedicated server, you still have to deal with installing and settings things up, and even some of the maintenance that's needed to get everything up and running. And yet, with everything working, given that now you are in complex and tightly coupled systems with different services and programming languages, there's always the chance that things will break all of a sudden.

Docker to the rescue

Docker makes delivering software easy again. Docker allows you to set up everything --- the software you've developed, the OS in which it will run, the services that it needs, the modules and back-end tools such as cron jobs. All of it can be set up to run in minutes, with the guarantee that it will work on the target system as well as it works on your development environment.

The Problems Docker Solves

These are some of the issues you'll come across at some point or another when delivering software:

  • The application you carefully developed with your favorite language (Python, Ruby, PHP, C) doesn’t seem to work on the target system, and you can’t quite figure why.
  • Everything was working just fine … until someone updated something on the server, and now it doesn’t anymore.
  • An otherwise minor dependency (e.g. a module that’s used only occasionally, or a cron job) causes problems when your client uses the software … But it was working just fine on your computer when you tested it!
  • A service your product relies on, like a database or a web server, has some problem (e.g. high traffic for a website, or some problematic SQL code) and acts as a bottleneck slowing down the entire system.
  • A security breach compromises some component of the system and, as a result, everything goes down.

These issues fall within the somewhat fuzzy territory of "DevOps", with some of them involving maintenance issues (server updates), some testing issues (checking modules versions), and some deployment issues (installing and setting up everything on a different location). It's a real pain when deployment of something that's already working doesn't go smoothly, instead becoming problematic and time consuming.

Software Containers

You're probably familiar with those large, standardized shipping containers that exist to simplify delivery around the world --- the intermodal container:

shipping container

You can put pretty much anything in one, ship it anywhere, and at the other end unload what's there --- a car, some furniture, a piano --- in exactly the same, original condition.

In software development, we may spend days trying to get things working on a different environment --- only for them to fail a couple of days later. It's easier and faster to ship a working car to a different continent than to deliver software that works reliably. Isn't that kind of embarrassing?

So people started thinking of something similar to shipping containers for delivering software --- something you could use to ship software in a reliable way, that would actually work as expected: software containers.

This might make you thinks of software installers, like those used to easily distribute desktop applications. With an installer, all you can distribute is an executable and some runtime libraries (small programs that the main application needs for running) --- as long as these don't conflict with those that the system has already installed. In contrast, software containers enable us to ship pretty much anything --- just as with physical containers.

Examples of what you can put in software containers include:

  • a Python, Ruby or PHP interpreter, packed with all of the required modules
  • any runtime libraries
  • specific versions of certain modules (because you never know when a newer version will cause some problems)
  • services your application needs, like a web server or a database
  • some specific tweaks for the system
  • maintenance back end tools, such as cron jobs and other automation.

Simplified operations

Containers simplify operations dramatically. And they're so practical, easy to create and easy to handle that there's no need to put everything into a single one.

You can put the core of your application with the libraries in one container, and call services such as Apache, MySQL or MongoDB, from different containers. This all may sound strange and even complicated, but bear with me and you'll see how doing so not only makes a lot of sense, but it's way easier that it sounds.

Continue reading %Understanding Docker, Containers and Safer Software Delivery%


by Lucero del Alba via SitePoint

Tidy and Optimize Your Java Code with Android Butter Knife

Creating code can sometimes be frustrating. Developers have to deal with redundant coding that is visually unattractive. In this article, I will introduce an injection library for Android development that can help create more beautiful code and recent updates introduced with version 8. Android Butter Knife is an open source view "injection" library for Android created by Jake Wharton.

ButterKnife

Butter Knife is small, simple and lightweight, and it makes life as a developer easier. It allows developers to perform injection on arbitrary objects, views and OnClickListeners so they can focus on writing useful code. Consider Android Butter Knife a reduction library. It replaces findViewById with @Bind() and set^^^^Listener calls with @onClick() making code cleaner and more understandable. Butter Knife enables focus on logic instead of glue code and reduces development time by reducing redundant coding.

Continue reading %Tidy and Optimize Your Java Code with Android Butter Knife%


by Valdio Veliu via SitePoint

20 Useful Video Plugins Available on CodeCanyon

Designing, Wireframing & Prototyping an Android App: Part 1

If you dream of creating the next big thing in Android apps, then I'm not going to lie: you’ve got your work cut out for you!

You only need to take a quick peek at the Google Play store to see that pretty much every app you can think of has already been created—usually, multiple times and with varying degrees of success.

In such a competitive market, your app has to offer the full package—simply having a great set of features isn’t going to cut it! Your app also has to be responsive, easy to use, completely free of bugs, and (as shallow as it may seem) it has to look nice, too.

So when you jolt awake in the middle of the night with a brilliant idea for an Android app, resist the temptation to leap out of bed, boot up Android Studio and start bringing your vision to life. If you’re going to do your idea justice, then you need to put some thought into your application’s design.

In this two-part series, I’m going to show you how to turn a great idea into a great app. You’ll learn how to plan, test and perfect every part of your app’s design, and how to iron out as many issues as possible before you even write a single line of code.

In this first installment, we’re going to look at how to answer all of those big, burning questions every developer has to tackle whenever they start a new Android project. Then, we’ll create a list of all the screens we need to build, plus a screen map that shows exactly how all these screens fit together.

In part 2, you’ll master some powerful, designed-minded techniques, including wireframing and prototyping. By the end of part 2 you’ll have created a digital prototype that you can install and test on your Android smartphone, tablet, or emulator.

To help you see exactly how you’d take an idea from ‘spark of inspiration’ to working digital prototype, I’m going to imagine I’ve come up with an idea for an Android app that I want to create, and then develop this idea throughout the series.

Since we're (supposedly) heading into summer, I’m going to design an app that’ll help people plan and book the ultimate summer holiday with all their friends.

So we have our idea—what’s the first thing we need to do?

1. Write a Product Statement

Your typical app has lots of nice-to-have added extras, but it also has a clearly defined primary task. For example, our finished travel app might include social media functionality so users can share a snap of that awesome cocktail they had on the beach, or the cat they petted outside their hotel, but these features aren’t the app’s primary task.

A good trick for getting to the core of what your app is really about is to write a product statement. This is a single sentence that communicates what your app is, what it does, and why it’s imperative that the user boots up Google Play and downloads your app right now. It might help to imagine you’re pitching your app to a potential user, and you only have a single sentence to get your message across.  

After much deliberation, I’ve decided on the following product statement:

An app that takes the stress out of planning and booking the ultimate summer vacation.

It’s crucial that you never lose sight of this product statement, so you may want to scribble it on a post-it note and stick it above your desk.

You may want to scribble your product statement on a post it note

2. Identify Your Target Audience

The next big question you need to tackle is: who exactly am I building this thing for?

Hopefully you already have a rough idea of the kind of person who might want to use your app, but for the best results you need to design your app with a very specific target audience in mind. The old saying is true: try to please everyone, and you’ll end up pleasing no one.

Who you’re trying to appeal to should influence every part of your app—from the features you include to the look and feel of your UI, right through to the tone of your application’s text. That’s why it’s crucial you identify your target audience as early in the design process as possible.

I already have a rough idea of who I’m targeting: young adults aged 18-25 who are either on summer break from college or university, taking a full-blown gap year, or are planning one final adventure before it’s time to start looking for that first full-time job. This is a good start, but we can get more specific than that!

One simple but effective trick for zeroing in on your audience is to create a user persona.

A user persona is a single user who epitomizes the kind of person you’re targeting. What characteristics would this person have? Although the exact characteristics will vary depending on the kind of app you have in mind, you can start by answering the following questions:

  • How old is your user persona? This could be an exact age or an age bracket such as people over 60, or young adults.  
  • Where do they live? This might be a specific country or city, or a type of place such as by the sea or in the big city.
  • Do they have any children?
  • What are their hobbies?
  • Do they have a job? And if so, what is it?
  • Are they currently in education?
  • What is their favourite type of application?
  • What is their least favourite type of application?
  • What factors motivate them to download an app?
  • Do they ever pay for mobile apps?
  • How experienced are they with mobile apps? Are they a power user, or a beginner?  
  • How experienced are they with technology in general?

Let’s create a user persona for our travel app. For the best results, it helps to think of your persona as a real person. You might even want to give your user persona a name, which is exactly what I'm going to do: meet Sasha!

  • She’s 20.
  • She’s a university student on summer break.
  • She’s living with her parents over the summer, but will be returning to student halls at the start of the academic year.
  • She’s single, with no children.
  • She doesn’t have a job, so her student loan is her sole source of income.
  • As someone who has grown up with social media, her favourite apps are anything and everything that lets her share photos and status updates with her friends, family, and the World Wide Web in general.
  • She’s a pro with technology, especially mobile apps.

Since my app is all about organising a holiday, I also need to define Sasha’s experiences surrounding travel. Is my “typical” user likely to be well-travelled? Have they been responsible for planning their own holidays before, or is this all new to them?

I’m going to add the following characteristics to my user persona:

  • Sasha has been abroad several times, but only ever with her family.
  • This is the first time she’s planned her own holiday.
  • Sasha can be fairly organised when she wants to be, but since this is the first time she’s been involved in planning and booking a holiday, she'd definitely appreciate a helping hand!

Use Cases

So now we have the who, but what about the when? Under what circumstances might Sasha feel compelled to whip out her phone and boot up our app?

Here are a few that spring to my mind:

  • Sasha is hanging out with university pals, and inevitability the conversation turns to how much fun they're going to have over the summer. Everyone gets over-excited, and before you know it Sasha has opened our app, and she and her friends are eagerly planning what is sure to be the trip of a lifetime.
  • Sasha has just popped into the group chat she and her friends leave running in their favourite instant messaging app, and she sees that—finally!—everyone has agreed on a destination. Excited, Sasha boots up our app and starts researching fun things to do in that area.
  • Sasha is feeling frustrated. She and her friends seem to spend hours talking about how great their trip is going to be, but never actually get around to booking anything. Someone needs to take charge, and it looks like that person is going to have to be her. The only problem is she’s never arranged anything like this before. What she needs is some kind of app that can take the stress out of planning and booking the perfect summer vacation….

3. Create a Features List

It’s time to have some fun: let your imagination run wild and write down every feature you would include in your app if you had infinite time, money and a whole army of developers ready and raring to help you out. For now, don’t worry about whether these features are practical—think of this as your ultimate features list.

If you're struggling for inspiration, then head over to the Google Play store and download a few examples of Android applications that cover similar content, or have the same target audience as your application.


Spend some time exploring these apps and make a note of what the app does well, and any areas you feel you could improve upon. 

Here are a few of the features I’ve jotted down:

  • The ability to book everything the user could ever need for their trip, from plane, train and bus tickets, to hotel reservations, and even miscellaneous things like reserving a table at that local restaurant that has particularly great reviews on TripAdvisor.
  • Read reviews left by other users, and post your own reviews.
  • The user defines their budget in advance, and the app subsequently filters all its suggestions based on this budget.
  • Be spontaneous! Planning a holiday is supposed to be fun, so why not leave everything up to fate by sticking a virtual pin in a virtual map?  
  • Okay, so planning a holiday is supposed to be fun, but it can also be hard work—especially if this is the first trip you’ve ever booked. Our app should provide a checklist of everything the user needs to book and arrange, in order to plan the perfect vacation. 
  • Social media functionality, so users can make all their friends and family jealous by posting photos and status updates about how much fun they’re having on holiday.
  • A travel journal for those users who want to share more than simple photos and status updates.
  • Since my target audience is young adults, this may be the first time many of them have been responsible for booking their own holiday. They might appreciate some general advice aimed at the first-time traveller, such as how to apply for a passport, or the kind of things you can and can’t carry in your hand luggage.
  • A countdown, so users can track the weeks, day, hours and minutes until it’s holiday o’clock.

Now it’s time for a reality check: there’s no way anyone can cram all their ideas into a single app. Even if all your ideas are sensible, well thought out and would appeal to your target audience, throwing everything but the kitchen sink into an app would be a nightmare for you as a developer, and would likely lead to a terrible user experience.

Imagine launching an app for the first time and instantly being confronted by a huge, complicated menu packed with a tonne of options. Choice is a good thing, but too much choice just becomes confusing! Since the last thing you want to do is confuse your users, we need to whittle our ultimate features list down to the bare essentials.

So how do we decide which features live, and which features die?

For the initial release, you should concentrate on features that are essential for delivering your app’s core functionality. And remember that just because a feature doesn’t make it into Version 1.0, doesn’t mean it won’t find its way into a subsequent update. If you come across a feature in your list that has potential, but isn’t essential for fulfilling your app’s primary task, then make a note of it as something that’s worth revisiting once you’ve got your app’s fundamentals down.

Your user persona and use cases should also play a role in determining what features you include in Version 1.0 (and in subsequent releases). What features are most likely to appeal to Sasha?

After re-reading the user persona, use cases and product statement, I’ve settled on the following features:

  • Booking travel and accommodation. This is an absolute must—if Sasha doesn’t at least arrange transport and a place to sleep, then she’s going nowhere.
  • Setting a budget. Sasha is funding the entire trip on the dregs of her student loan, so setting a budget is a top priority for our money-conscious student.
  • Sticking a virtual pin in a virtual map. Sasha is a young student looking to book a summer adventure with all her friends, so the thought of doing something a bit crazy and spontaneous might appeal to her. Also, remember our use case where Sasha is hanging out with her friends and they’re all egging each other on about how much fun they’re going to have this summer? This is the perfect opportunity for Sasha to really get the ball rolling by booting up our app and sticking a virtual pin in a virtual map.
  • A checklist. Since this is the first time Sasha has been involved in planning her own holiday, having a clear checklist to work through would make the whole thing much less intimidating.

Our list contains other features that would appeal to Sasha, such as being able to post photos from her trip, as we already know that Sasha is a fan of all things social media. However, for this initial release I’m going to keep things simple and remain focused on the app’s primary goal. Once you’ve delivered your app’s core functionality and fulfilled your product statement, you can turn your attention to all those nice-to-have added extras.

4. Sketch Out the High-Level Flow

You next task is to start thinking about the screens that you’ll need to create, in order to deliver this list of features, so grab a piece of paper and a pen or pencil. Sketch some rough flowcharts of the routes your users might take through your app, in order to accomplish core tasks.

For my travel app, the core tasks are:

  1. Booking a trip.
  2. Reviewing details about any trips the user has already planned.

You’ll typically represent screens with shapes, and express navigation using lines or arrows.

Example of a quick flowchart

This exercise is mainly intended to get you thinking about the different screens you’ll need to create, in order to deliver the features you cherry-picked from your ultimate features list. Don’t spend too much time on your flowchart, as you’ll refine this flow when you come to create your screen map.  

5. Create a Screen List

Next, come up with a list of all the screens you’ll need to create, based on your flowchart.

Here’s my screen list, plus a brief overview of what I plan to include in each screen:

  • Homescreen. This screen contains a menu of any trips the user has already planned via our app. The user can tap any item in this menu, to view the checklist for that particular trip. Alternatively, they can give the ‘Plan A New Adventure!’ link a tap.
  • Map. This screen contains a map and a virtual pin. The user can tap a section of the map, or if they’re feeling spontaneous they can grab the virtual pin, close their eyes and leave it all up to fate.
  • Select a city. Once the user has selected the country they want to visit, this screen suggests some cities where they might want to stay. This screen also contains a slider where the user can let the app know what kind of budget they’re working with. 
  • Checklist. This screen contains a checklist for the user to work through. Tapping any item in this list launches a screen where the user can complete this task, including:
  • Book transport.
  • Book a hotel.

6. Create a Screen Map

Now it’s time to combine our flowchart and screen list into a screen map that expresses the navigational relationship between all of these screens.

Start with the first screen the user sees when they launch your app, and work outwards.

A screen map of our travel app

It’s never too early to start looking for ways to improve the user experience, so once you’ve created your screen map, take a moment to look at it with a critical eye. One factor that has a huge impact on the user experience is the number of screens the user needs to navigate in order to complete the app’s core tasks.

Generally speaking, the fewer steps, the better the user experience. This map is the perfect opportunity to identify places where you can reduce the number of screens the user needs to navigate. This may involve removing screens, combining screens, reordering screens, or identifying places where it would make sense to add a navigational ‘shortcut’ so the user can jump straight from screen A to screen E.

Conclusion

So far, we've made some big decisions about the app we’re going to create, including who our target audience is, and what features we’re going to include in Version 1.0 (with some features left over for subsequent releases). We’ve also made a list of all the screens we need to design, and sketched out how these screens are going to be arranged in our finished app.

At this point we have our app all planned out, albeit at a very high level. In part 2 I’m going to dig deeper and design the individual screens that make up this screen map, before putting these screens to the test by building a digital prototype.


by Jessica Thornsby via Envato Tuts+ Code

FAY

The website was part of a rebranding strategy for Fay, and it was designed with the aim of building an innovative full experience e-commerce integration.
by via Awwwards - Sites of the day

Twitter Analytics: How to Know if Your Twitter Marketing Works

ms-podcast208-ian-cleary-600

Do you review your Twitter Analytics? Want to use them to improve your Twitter marketing? Ian Cleary is with us to explore what you can learn from the data provided in Twitter Analytics. More About This Show The Social Media Marketing podcast is an on-demand talk radio show from Social Media Examiner. It’s designed to help busy [...]

This post Twitter Analytics: How to Know if Your Twitter Marketing Works first appeared on .
- Your Guide to the Social Media Jungle


by Michael Stelzner via

Thursday, July 28, 2016

Announcing The Versioning Podcast

A little over two years ago we launched Versioning, a free email newsletter to send our SitePoint readers daily tidbits mined from all over the web, to keep you amused, informed, and delighted. The response has been tremendous, and we're very proud of what we've built. Along the way we've had the chance to gather a lot of feedback, and we've been listening to what you're asking for.

Today we're excited to announce that we're taking Versioning to a whole new medium, and launching a podcast: The Versioning Show. Our goal is to keep you in touch with the people pushing the envelope on web design and development, mining their brains and sharing their insights and ideas so you can take your own work to the next level.

Think of The Versioning Show as an extra bonus publication just for you, that you can listen to anywhere, anytime, for free. In the spirit of the Versioning newsletter, we'll be keeping the shows short and to the point--usually around half an hour or so. We think that's just enough time to hear what someone cool is working on, and get inspired to go play with some new ideas.

The Hosts

The Versioning Show is hosted by two of our regular SitePoint contributors: Tim Evko and M. David Green. You may have seen their articles and watched their videos on SitePoint, or read their books and taken their courses on SitePoint Premium.

Tim Evko is a front-end developer, writer, and sometimes coherent thinker. You'll most likely hear him talking about performance, progressive enhancement, whiskey, large cuts of meat, or JavaScript. You can find him on Twitter at @tevko.

M. David Green enjoys creating articles, books, videos, and courses around JavaScript, CSS, semantic HTML, and agile engineering practices. He also coaches engineers through Agile That Works, and hosts the Hack the Process podcast. You can find him on Twitter at @mdavidgreen.

How to Get The Versioning Show

The Versioning Show is available right now as a podcast in the iTunes store, and we'll be releasing episodes with transcripts on SitePoint starting next week. We may be adding it to other podcast directories soon if you get in touch and let us know that there's interest. In the meantime, just search for Versioning in your favorite podcast listener, sit back and enjoy the show. (And be sure to leave feedback and a rating in iTunes to let us know what you think!)

Keep In Touch

If you're as excited about The Versioning Show as we are—and why wouldn't you be?—follow us right now on Twitter at @VersioningShow to get the latest information as soon as it comes out. You can also Tweet us there. And who knows, we may have something special planned in the coming weeks for our earliest and most loyal listeners who follow us there....

Continue reading %Announcing The Versioning Podcast%


by M. David Green via SitePoint

Above & Beneath: Featured Content Layout Effect with CSS

Today we’d like to share a little aquatic landing page template with some special effects with you. The idea is to show a big headline in the initial view and when a grid/menu icon is clicked, the view slides down (below the water) and some featured content or menu items get shown. The transitions are accompanied by some fitting background sounds.

The post Above & Beneath: Featured Content Layout Effect with CSS appeared first on jQuery Rain.


by Admin via jQuery Rain

Clipped SVG Slider

A simple slider, with morphing preview images animated using SVG properties.

The post Clipped SVG Slider appeared first on jQuery Rain.


by Admin via jQuery Rain

21 Digital Marketing Lessons from The Game of Thrones [Infographic]


If you are a Game of Thrones fan you would have just finished watching the Season 6 finale and would be eagerly awaiting the next season. Surely, you can’t wait enough for the battle of the Queens for the Seven Kingdoms.

All major players are moving into Westeros where we await to see how it all ends. Who gets the Throne? What happens to the major characters? What happens to some of the story lines and sub characters?

Whether you are a big Game of Thrones fan or not you can still learn a lot of digital marketing and content marketing tricks from these epic fantasy novels made into a TV series by HBO. Of course, HBO has a huge budget and an army of people working on the “on screen” and “off screen” content but some of the lessons we can learn are very simple and does not cost you an arm, leg or even a trip to the Wall (Night’s Watch).

GoT is a great example of content repurposing from books into a TV series. GoT takes advantage of massive amounts of user generated content. It also has legions of loyal social media followers.

by CENT Muruganandam via Digital Information World

Quick Tip: How to Throttle Scroll Events

One of the perils of listening to scroll events is performance degradation. The browser will execute the callback every single time the user scrolls, which can be many events per second. If the callback performs a bunch of repaints, this means bad news for the end user. Repaints are expensive, especially when you are redrawing large parts of the view, such as is the case when there is a scroll event.

The example below illustrates the issue:

See the Pen Unthrottled Scroll Events by SitePoint (@SitePoint) on CodePen.

Apart from performance degradation and being prone to causing seizures. This example illustrates what happens when the computer does exactly what you tell it to do. There is no smooth transition between background colors and the screen just flickers. Any hapless programmer may feel as if there is no hope left in this world. Isnʼt there a better way?

Regulating Events

One solution is to defer events and manage a bunch of them at once. There are two commonly used functions that can help us with this: throttle and debounce.

Throttle guarantees a constant flow of events at a given time interval, whereas debounce groups a flurry of events into one single event. One way to think about it is throttle is time-based and debounce is event driven. Throttling guarantees execution while debounce does not once grouping has occurred. If you want to know the specifics, check out this in-depth discussion of debounce versus throttling.

Debounce

Debounce solves a different problem, such as key presses with Ajax. When you type in a form, why would you send a request per keystroke? A more elegant solution is to group a burst of keystrokes into one event that will trigger the Ajax request. This fits within the natural flow of typing and saves server resources. With key presses, the interval between events isn't important, since users donʼt type at a constant rate.

Throttle

Since there are no guarantees with debounce, the alternative is to throttle the scroll events. Scrolling occurs on a given time span, so it is fitting to throttle. Once the user begins scrolling, we want to guarantee execution on a timely basis.

This technique helps with checking if we are at a specific part of the page. Given the size of the page, it takes many seconds to scroll through content. This enables throttling to fire the event only once at any given interval. Event throttling will make the scrolling experience smoother and guarantee execution.

Below is a poor manʼs event throttler in vanilla JavaScript:

Continue reading %Quick Tip: How to Throttle Scroll Events%


by Camilo Reyes via SitePoint

Multiple.js – Sharing Background Across Multiple Elements using CSS

Multiple.js is an experiment in sharing background across multiple elements using CSS.


by via jQuery-Plugins.net RSS Feed

Aurelia 1.0 and Meteor 1.4 released, plus an official React app builder

This week's JavaScript newsRead this e-mail on the Web
JavaScript Weekly
Issue 294 — July 28, 2016
Aurelia is a next-gen JavaScript client framework that Rob Eisenberg, formerly an Angular 2 core team member, first shared 18 months ago.
Aurelia

A new, official toolkit that brings together several tools to rapidly create React apps with no up-front build config. Official announcement and guide here.
Facebook

An extremely thorough tutorial/walkthrough extracted from ng-book, an Angular 2 book.
ng-book

PubNub
Learn to build your own AngularJS chat app with realtime messages and more in no time. View Tutorial.
PubNub   Sponsor

Microsoft open-sourced ChakraCore, the core of their JavaScript engine, in January. Now, they have implementations on Linux and OS X, as well as an experimental version of Node that uses it.
Limin Zhu

Jack Franklin takes a look at Higher Order Components, a design pattern that helps keep your React applications tidy, well structured and easy to maintain.
Jack Franklin

This update brings Meteor up to Node 4.4.7 (from 0.10.46), plus a jump from MongoDB 2.6 to 3.2.
Meteor

Parses your React project’s source files to generate a visual tree graph representing the React component hierarchy.
Team Gryff

Todd Motto explains when and why you should consider moving from Angular 1 to Angular 2 and some approaches from making the conversion.
Todd Motto

Jobs Supported by Hired.com

  • Web Developer at William Hill, GibraltarAre you are a Web Developer with excellent JavaScript coding skills? Our ideal candidate would be someone who enjoys JavaScript and has an interest to work cross-functions, pro-active throughout, with a focus on delivery. William Hill
  • Senior Full Stack Engineer with Gorilla Logic (Boulder, Colorado)Work with an industry leader in data driven marketing. We're looking for Sr. Software Engineers working on both frontend and backend dev for our client's big data platform. Read why the best engineers choose Gorilla Logic. Gorilla Logic
  • Front End Developerpriceline.com are seeking a full-time front end developer to join our growing team. Our creative, flexible company culture merges the agility of a start-up with the stability of an established, international public company. priceline.com

Can't find the right job? Want companies to apply to you? Try Hired.com.

In brief

Ember.js 2.7 and 2.8 Beta Released news
Tilde Inc.

PHP Framework Laravel Selects Vue.js as Default JavaScript Framework news

The jQuery Foundation and Standards news
jQuery Foundation

Interactive ES6 cheatsheet: 9 sections, 31 code samples tutorial
In 5 minutes you'll be able to read and understand modern JavaScript code with 31 runnable code samples.
Swizec Teller  Sponsor

JavaScript Closures Explained by Mailing a Package tutorial
Kevin Kononenko

How to Build a REST API with AWS SimpleDB and Node.js tutorial node
Kyle Davis

A Step-by-Step TDD Approach on Testing React Components using Enzyme tutorial
thereignn

What Do the Popular JavaScript Tools Depend On? tutorial
Examining the dependencies of popular tools and frameworks including Angular, React, jQuery, and Aurelia.
Cody Lindley

Introducing Reduce: Common Patterns video
9 min video looking at the map() and filter() functions and how reduce can give a performance boost.
Mykola Bilokonsky

Learning How to Ride: An Introduction to Cycle.js video
Cycle.js is a declarative JS framework for building apps as pure functions.
YouTube

Download Rangle’s Official Angular 2 Training Book tutorial
This extensive training book covers the most important Angular 2 topics including how to get started with the Angular 2 toolchain and write scalable & maintainable applications.
Rangle.IO  Sponsor

Career.JS: Podcast Where 3 JS Devs Share Software Dev Career Advice podcast

Mixins Considered Harmful opinion
Dan Abramov

ECMAScript Version Detector: Paste in Code, See What Bits of Specs You're Using tools

Bi Sheng: A Static Site Generator Based on React and Markdown code
Benjy Cui

RE-Build: Build Regular Expressions with Expressive Semantics code
e.g. ("2").then.oneOf.range("0", "4").then.digit
Massimo Artizzu

MetricsGraphics.js: Time-Series Data Visualization Library code
Provides a simple way to produce common types of graphics with D3.
Almossawi and Ulmer

Curated by Peter Cooper and published by Cooper Press.

Stop getting JavaScript Weekly : Change email address : Read this issue on the Web

© Cooper Press Ltd. Office 30, Lincoln Way, Louth, LN11 0LS, UK


by via JavaScript Weekly