Draft an app, how to start?

I’ve been developing apps from a few years now and there are some typical things at the beggining (when you are thinking and designing the app) that you should do if you do not want to be overwhelmed.

  1. First at all, do a meeting with your customer, see what does he need and what does he really want. Believe it or not even customers don’t know exactly what they want.
  2. Discuss with your team about your possibilities, period of times and efforts.
  3. Prepare a draft of the app (I use Inkscape for that) where you can explain the interface and the basic user experience.
  4. Discuss again with your team. Remember that no matter if you are a great UI/UX specialist or not, sometimes your workmates can offer great ideas (new ways of thinking).
  5. Show the strengths of your app to the customer and be open to do some modifications.
  6. Finally, think about the budget and time of developing and sign a closed contract with your customer.
  7. So important, once the contract have been signed, any extra modifications have to be made with a new contract if you don’t want to get mad or/and unproductive.

Here you can see an initial basic draft. Do not extend yourself too much doing it wonderful and perfect because you will have to change it a lot (it has to be just the first idea), remember you will have more meetings with your team and customers.

gns_demo_by_gengns

Please, do not make the mistake of starting with the code!

 

Draggable marker in Google Maps without API Key

There is a really good documentation about how to use Google Maps API, many of the Google examples are with an API Key but you don’t need it. Use the API Key if you want to monitor your apps or if you want to buy additional usage quota (less than 2.5000 loads per day it’s free).

All Maps API applications should load the Maps API using an API key. Using an API key enables you to monitor your application’s Maps API usage, and ensures that Google can contact you about your application if necessary. If your application’s Maps API usage by exceeds the Usage Limits, you must load the Maps API using an API key in order to purchase additional quota.

So, for this basic example, we use Google Maps API without Key to add a draggable Marker in a map that is always centered on our marker position.

CSS zoom

Easy zoom in, zoom out, normal zoom and zoom adjusted to the container with CSS and JS.

If you want to change the zoom, just add or subtract from the original zoom CSS property.

document.querySelector("#zoomin").addEventListener("click", function() {
    $area.style.zoom = Number($area.style.zoom) + 0.2;
});

You can also set up maximum and minimum values to avoid infinite zoom.

To adjust an area or image to your container you need to divide the width or height depending of what you want to adjust.

document.querySelector("#zoomfix").addEventListener("click", function() {
    $area.style.zoom = $container.offsetWidth / $area.offsetWidth;
});

Here a real example:

Basic CSS transition using box-shadow

Would you like to set up a cool basic transition for your buttons when the cursor is over them?

  1. Create your HTML button. We have chosen the smile face character but you can use whatever you want (I normaly use Font Awesome).
  2. Define your CSS transition. In our case we want a period of 0.5 seconds every time our CSS changes and a transition effect with a slow start and end (ease-in-out).
transition: all 0.5s ease-in-out;

Our CSS will change if the mouse is over the button.

i { 
    box-shadow: 0 0 0 75px #E94F37 inset;
    color: white;
}

i:hover {
    box-shadow: 0 0 0 4px #E94F37 inset;
    color:#E94F37;
}

We are filling up the element with an inner shadow (inset) and changing the font color.

Here a real example:

Would you like to start with web development?

UPDATED: 2022-05-06

If you don’t know anything about programming but you would like to start creating your own webs, desktop or mobile apps from scratch, I’m here to help you out ^^

Break the ice with a short fun history about JavaScript and the Web

  1. From undefined to something.js

Here we go, our first real code contact! You can start doing these fantastic courses from CodeAcademy (guided step by step, interactive and very basic)

  1. Introduction to HTML
  2. Introduction to CSS
  3. Introduction to JavaScript (and intermediate)

Follow with these complete courses from W3CSchools (a wider guide with many examples)

  1. HTML – The language for building webs
  2. CSS – The language for styling webs
  3. JavaScript – The language for programming webs

Don’t worry if some concept are repeated, you need to consolidate, humans learn buy doing.

Another really good option is Mozilla Developer Network (shared knowledge for the Open Web) and all courses about Web Technologies where you can find a wonderful documentation, tutorials and tools. Everything very well structured and in many different languages with the chance to dive deeper into Web Technologies.

After doing CodeAcademy, W3CSchools courses and having taken a glance to MDN I would recommend you to watch this YouTube tutorial: Understanding the Weird Parts of JavaScript. It’s also really basic but it explains some aspects under the hood of JS. This guy made a really good presentation, one of the best videos about JS I’ve ever seen. You can complete his course on Udemy.

After consolidating a good base:

  1. Functional Programming with JavaScript (mandatory)
  2. Understanding the even loop (mandatory)
  3. CSS Grid
  4. Svelte
  5. Some of my tricks

Things are as easy as you want them, the knowledge should be open and free for everyone. There are many genius out there and most of them cannot afford their studies, even if they are public. Do not keep your knowledge for you, spread it out together with your ideas to build a better world 🙂