IndyWatch Education Feed Archiver

Go Back:30 Days | 7 Days | 2 Days | 1 Day

IndyWatch Education Feed Today.

Go Forward:1 Day | 2 Days | 7 Days | 30 Days

IndyWatch Education Feed was generated at Community Resources IndyWatch.

Wednesday, 18 July

03:44

Normal Forms arent just for databases freeCodeCamp - Medium

You can apply similar rules to data object types, too.

You probably learned the term Normal Form in the context of defining schemas for relational databases. Database normalization strives to reduce data redundancy in table rows and columns. Consequently, data anomalies are less likely to occur.

Whats a data anomaly?

Suppose we had this situation:

Table A contains values for properties X, Y, Z for a row identified by the id of x; these are assertions about x. Lets say Y in row x is asserted to be the value 3.
Table B also contains the same assertions about why Y for x
Table A is told later, Facts have changed. Y is now 4
Table B is later queried, and says Y is still 3.
Now A and B assert two different facts about Y, depending on which table you query.

Thats a data anomaly: two different assertions about a fact. And facts do matter in computer systems.

The what and whyfors of Normal Forms

Ill use the term type to denote the meta data of an object. This could be implemented by a class definition, mixin, trait, stamp, or whatever mechanism your preference and language of choice supports. Ill also be focusing on data objects, such as POJOs, PODOs, JSON and similar simple objects.

Stated informally, the first three normal forms are described as follows:

First Normal Form (1NF): No repeating elements or groups of elements
Second Normal Form (2NF): All Non-key Attributes are Dependent on All of Key
Third Normal Form (3NF): No dependencies on non-key attributes

Thats pretty dry reading. But applying these principles to object type definitions is actually pretty intuitive. Once youve internalized these rules, you wont even think about them consciously again.

Objects are relational, too

Relational databases support associations by way of Primary and Foreign Key constraints. Hierarchies are implicit, if they...

03:31

Go SUPER SAIYAN with RxJS Observables freeCodeCamp - Medium

I loved DragonBall Z as a kid, and still love it as an adult.

Among the ludicrous number of transformations, the original Super Saiyan remains my favorite.

Nothing quite like the original

Im also loving RxJS the more I level up with it, so why not combine these two for the ultimate showdown?

Lets Go Super Saiyan

With four sprite sheets and a bit of HTML, CSS, and RxJS, we can recreate this legendary transformation!

This is what well be making. Exciting, right?! 

Setup

Everythings on my GitHub.

cd ./wherever-you-want
git clone https://github.com/yazeedb/dbz-rxjs
cd dbz-rxjs

Open index.html in your favorite browser, and the project in your favorite text editor, and youre ready to go!

No npm installs today 

And going forward, Ill use the acronym SSJ instead of Super Saiyan for brevity.

First Day of Training

Youll notice that Gokus already moving. Since were focusing on RxJS, well just skim the projects starting point.

Heres the main HTML:

<div id="root">
<div id="meter-container">
<span>Hold any key to POWER UP!</span>
<div id="meter"></div>
</div>
    <div id="sprite" class="base"></div>
</div>

The bottom div has class="base", which corresponds to this CSS:

.base, .ssj {
width: 120px;
height: 250px;
animation: stand .8s steps(2) infinite;
}
.base {
background-image: url('img/goku-standing-sheet.png');
}

This sets Gokus width, height, and standing animation.

If you look at his base/ssj sprite sheets, its two different positions and were switching between them every 0.8 seconds.

The switchings handled towards the bottom of style.css:

@keyframes stand {
from { background-position: 0px; }
to { background-position: -255px; }
}

Same thing for power up:

...

03:17

Technical phone interview case study: How to double an array in JavaScript freeCodeCamp - Medium

Photo by Pavan Trikutam on Unsplash

Technical phone screens are a crucial step in the technical interview process. Often, whether or not you pass the technical phone screen will dictate whether youll be invited for an on-site interview.

Technical phone screens can be tough because you must think out loud while working through a problem without having the benefit of being there in person with your interviewer. When youre interviewing with someone over the phone or video, it can be difficult for your entire presence to come through. Usually, youll be working in a shared editor, so while youre working through a problem, the interviewer will only be able to hear you and see what youre typing. Many people find it more difficult to communicate in this way than in person.

The good news is technical phone screens are something you can practice and get better at. Just like any skill, the more you do them, the better youll get. Eventually you will start to see results, as youll be invited to interview on-site with more and more companies.

Though all technical phone interviews are different, most will require you to think on your feet. So the best way to prepare is simply to practice working through questions. You can walk through them on your own by talking them out, and you can also practice with a friend. If youre practicing on your own, you could even record yourself so you can listen back on the recording and see if how you explained your thought process made sense.

Finally, you can practice by interviewing with companies! When I was last interviewing for a new role, I started by finding companies that I was interested in, but wouldnt be upset about if I didnt pass the technical phone screen. This way, I still felt pressure to prepare, but I expected to fail a few times first. It was then less disappointing when I didnt move on to the next stage.

In this post, I will walk through a question I received in a technical phone screen to give you a framework for approaching these types of interviews. I hope this is helpful, and I welcome your comments and feedback!

Lets dive in.

The question

This was an actual question that I received from an interviewer. I like this question, because there are several ways to solve it. The way you solve it reflects your programming style and helps the interviewer gauge whether or not youd be a fit for the position.

Heres the sample interview question:

Given an array, write a function that doubles the array.
Example: given [1,2,3,4,5], your function should re...

00:42

How to go beyond console.log and get the most out of your browsers debugging console freeCodeCamp - Medium

An old console

The console object is a very useful feature of browsers that has been around for many years. It provides access to the browsers debugging console.
Most web developers know how to print messages to the console using console.log. But Ive found that many dont know about other features of the console, even though they can be very useful for every web developer.

In this post, Ill go over some of these lesser known features and capabilities. I hope that you will find them useful and interesting, and will incorporate them into your day to day workflow and code.

I added a screenshot of the result of each example. If you want to try things for yourself, just open the DevTools and copy-paste the examples.

Using multiple arguments

It is quite common to log several values together. These may be a message along with a related value or the content of several related variables.

Here are two ways Ive seen developers achieve this:

1. String concatenation

const a = 123;
const b = 'abc';
const c = {aa: 234, bb: 345};
console.log('Foo bar ' + a + ' ' + b + ' ' + c);
Result of string concatenation

2. Using multiple calls

const a = 123;
const b = 'abc';
const c = {aa: 234, bb: 345};
console.log('Foo bar');
console.log(a);
console.log(b);
console.log(c);
Result of multiple calls

These methods may work (sort of), but:

  • They are not flexible
  • They are not very readable
  • They are cumbersome to write
  • They need special means to work properly with object variables

There are several better alternatives for outputting many variables. The most useful one for quick data dump is sending multiple arguments to console.log, like so:

const a = 123;
const b = 'abc';
const c = {aa: 234, bb: 345};
console.log('Foo bar', a, b, c);
Result of multiple arguments

This is very handy for debugging, but the output is not very controllable. For output that is intended to be read (like for a library), I would use a different method, which well get to later on.

Using different log levels

Besides the familiar console.log, there are other logging methods that correspond to different log levels:

console.debug('Debug message');
console.info('Info message');
console.log('Good old log mess...

00:20

The Engineers guide to the future freeCodeCamp - Medium

This post is a vision for the near to medium future, aimed at engineersor developers, coders, designers, or whatever else you want to call people who use computers to make new and amazing things. The creators. Its also aimed at anyone else interested in the future and what is coming, and what they can do to prepare for it.

So basically, this is for everyone!

My full-time job is innovationexploring new and emerging technology to see how it can be of use. Can it bring business value, can it improve customer satisfaction, can it make customers lives safer and more secure, can it make money or save money? Part of this is looking into the future and trying to predict what is going to happen, or at least, what could happen.

I believe that we need to keep up with technology to keep learningnew languages, new interfaces, new platforms, new user habits, new designsor we will be left behind. We cant assume that what were doing now will be relevant in the future. So heres a few thoughts on the future, and what I think that engineers (and everyone else!) should do to prepare themselves.

The Future is Augmented

Augmented Reality (AR), also known as Mixed Reality (MR) or even more trendily, Extended Reality (XR), is approaching blockchain levels of hype.

With the advent of ARKit and ARCore, augmented reality apps are now a lot easier to make. There are a lot of people trying to sell them as amazingly groundbreaking, with the ability to change retail, health, finance, whatever!

I love AR and have been experimenting with it for a while now. From building the mandatory portal apps, to building an app to map out floor plans, to making a crazy game for a kids coding event (with tutorial and open-source code), Ive learned firsthand how to build AR experiences and how fun they can be.

screenshot from AR Madness. Tutorial here!

They arent going to change the world, thoughas currently, the only way to view them is via your smartphones camera view. No matter how cool something looks floating in the real world, if youre holding your phone up to see it, its not as immersive as it could be and probably not as convenient as a normal app is.

However, AR headsets (or AR...

Tuesday, 17 July

21:20

Do You Blog About Math? Denise Gaskins' Let's Play Math

Its carnival time again. Activities, games, lessons, hands-on fun if youve written a blog post about math, wed love to have you join our Playful Math Blog Carnival.

Posts must be relevant to students or teachers of school-level mathematics (that is, anything from preschool up through first-year calculus). Old posts are welcome, as long as they havent been published in past editions of this carnival.

Click here to submit your blog post

Dont procrastinate: The deadline for entries is next Sunday, July 22. The carnival will be posted at Three Js Learning blog.

Have you noticed a new math blogger on your block that youd like to introduce to the rest of us? Feel free to submit another bloggers post in addition to your own. Beginning bloggers are often shy about sharing, but like all of us, they love finding new readers.

Need an Idea-Starter?

If you havent written anything about math lately, here are some ideas to get your creative juices flowing

  • Talking Math with Kids: Children often have surprising insight. Even when theyre confused about math, their point of view can open our adult eyes to new understanding...

15:43

How to make a color picker with Vue! freeCodeCamp - Medium

Caution: colors may appear cuter than they are!

Hello Internet!

Im Zaydek and Im newish to web development. I come from a background in graphic design and programming, so picking up the frontend has been fascinating for me.

The web is like the offspring of a graphic designer and programmerits both visual and programmatic. So today, Im going to introduce you to Vue.js and component-based web designthat is, modern web development. Ill take you from a newbie web developer to an all-powerful, all-knowing web developer seer!

How can you make such claims, sir?
Fancy you

Well, the thing is, most people learned how to Internet before we (as a whole) understood how to Internet! Including me! Which, to be honest, is probably why I refused to learn web development for the longest time. It just felt so broken!

But times they are a-changin and web development has never been more accessible or streamlined. So it is my great honor, and privilege, to introduce you to how to Internet in 2018, and perhaps even beyond!...

15:43

How we can build Schrdingers div with Vue! freeCodeCamp - Medium

Theres a 50% chance well get this right

Hello Internet!

You probably dont know who I am *cough* Im Zaydek *cough* but I know who you are! Youre an aspiring, budding web developer interested in learning some new technologies, but a bit hesitant because frameworks come and go, and JavaScript is well.. JavaScript! To put it lightly.

So please allow me a few minutes of your time to make a convincing argument for why learning Vue could be a great decision. You should learn it not only for your qualifications, but for the pure fun and glee that comes with learning a well-documented and orchestrated piece of software.

I also teach how this works and a whole lot more in the Vue course I just released. Learn Vue from the basics and how to build a few things, too! Click here to enroll for free!

Click to enroll in my free Vue course!

...

10:20

How to get better at writing CSS freeCodeCamp - Medium

CSS3

Lets not beat around the bush: writing great CSS code can be painful.
A lot of developers dont want to do CSS development. I can do everything you want, but nah! No CSS.

When I was building apps, CSS was the part I never enjoyed. But you cant escape it, right? I mean, we are so focused on the user experience and the design nowadays that we just cant skip that part.

When beginning a project, all is working fine. You have a few CSS selectors : .title input #app, easy peasy.

But when your app gets bigger and bigger, it starts to look awful. Youre confused about your CSS selectors. You find yourself writing things like div#app .list li.item a. You keep writing the same code over and over again. You throw all your code at the end of your file because you just dont care, CSS sucks. And there you go: 500 lines of CSS completely unmaintainable.

https://medium.com/media/7a5ae755fa630ac2e02d05204855cf98/href

I have a purpose today: to make you better at writing CSS. I want you to take a look at your older projects and think : oh boy, how could I ever write something like this?

Ok, you might think, you have a point. But what about CSS frameworks? Thats what they stand for, isnt it? Thats how we write good CSS code.

Sure. But there are some downsides:

  • It often leads to commonplace design.
  • It can be difficult to customize or go beyond CSS frameworks.
  • You have to learn them before using them.

And after all, you landed on this article and theres a reason for that, right? So without further ado, lets learn how to get better at CSS.

Note: this is not an article about how to design beautiful apps. Its about learning how to write maintainable CSS code and how to organize it.

SCSS

Ill be using SCSS in my examples.

SCSS is a CSS pre-processor. Basically, it is a superset of CSS: it adds some cool features like variables, nesting, imports, and mixins.

Ill talk about what features we are going to use right away.

Variables

You can have variables with SCSS. The main benefit: reusability. Lets assume that you have a palette of colors for your app. Your primary color is blue.

So you put blue everywhere: the bac...

08:10

How to get started with augmented reality in Swift, the easy way freeCodeCamp - Medium

If you look around, this is the golden era of technology. Every keynote adds something new to the existing stack of technologies. Its exciting to see how these emerging technologies have enhanced the boundaries of our imagination. As a developer, we must be proud that we are the firsthand users of these technologies.

But every new technology comes with quite a steep learning curve. You just cant watch a keynote or a video on Youtube and start developing an app. But the good news is that, with AR in Swift, its remarkably easy to work with basic AR apps. Apple has done most of the heavy lifting for you. Follow along and youll see how easy it can be.

Lets dig in

In this tutorial, we will learn the necessary tools and techniques of AR in Swift that will allow us to create an app that decorates your floor with some cool floor tiles and wooden textures. The finished app will look something like this:

Lets start by creating a single view application in Xcode and name it Home Decor.

Adding camera permissions

Now the very first thing we will do is to navigate to the info.plist file and enable camera usage. Camera capability is the first thing you need for an AR app. Find the Camera Usage Description key, like the below image, and give it a suitable message. This message will show up in the very first launch of the app while asking for the camera permissions from the user.

Adding ARKit Capabilities to the app

Go to Main.storyboard. Drag and drop an ARKit SceneKit View on the ViewController and pin the ARSCNView to the edges of the ViewController.

Create a IBOutlet to the ViewController class, and name it sceneView. As soon as you do that, an error stating undeclared ARSCNView, will popup, as our view controller doesnt recognise anything of type ARSCNView. To resolve this, and to use other ARKit features, we need to import ARKit into the view controller.

Now move from storyboard to the view controller.swift file. Declare a property of type ARWorldTrackingConfiguration before the viewDidLoad() method and name it config. And our view controller will look like this (Ive removed the didReceiveMemoryWarning method):

import UIKit
import ARKit
class ViewController: UIViewController {
@IBOutlet weak var sceneView: ARSCNView!
let config = A...

06:15

The Definitive List of Courses for Learning About the United Nations Sustainable Development Goals freeCodeCamp - Medium

In 2015, the United Nations came together to adopt Agenda 2030 for Sustainable Development, a set of 17 Sustainable Development Goals (SDGs) covering topics such as health, inequality, climate change, and more. Since their adoption, the SDGs have served as a platform for organizing global, national, local, and individual action.

With the help of SDG Academy, a free online education platform from the UNs Sustainable Development Solutions Network (SDSN), Class Central has pulled together a giant list of courses that will teach you about the SDGs.

The SDG Academy alone has produced 20 courses on cross-cutting issues related to the SDGssuch as human rights, resilience, and environmental security. This list also includes courses sourced from various other MOOC platforms, all organized by which goal they address.

Overall, SDG Academy helped me identify more than 80 courses on sustainable development from global universities including Harvard, Oxford, Stanford, and MIT.

Whether youre interested in poverty reduction, human rights, food security, public health, education, or any other sustainable development topic, these courses will help you join efforts to achieve prosperity for both people and planet.

04:44

How I designed a famous building in isometric 3D using Figma freeCodeCamp - Medium

Original image vs my isometric 3D image.

This article does not quite follow the conventional tutorial format. This is a blend of storytelling and broad explanations, a well-documented expression of my thoughts.

Since I designed my first 3D object in Figma, Ive become more interested in recreating different complex objects and illustrations. This will ultimately help me better my design skills. I want make designs that make people go Wow! Did you really use Figma to do that? I want to hear them express their surprise, as they thought Figma was only a UI design tool.

That is how I personally want to position Figma within and beyond my immediate community. Just like developers say, its not about the available tools but how well those tools can be put to good use. Indeed, its about how these tools can be used for the desired results. Besides, the most important aspect of software development is what determines your level of proficiency in a particular programming language. I also do little front-end as well, though.

I have some design projects as well as accompanying posts that I will be preparing in an effort to document how I created them. I will be pushing these to the public as soon as I am done.

Though isometric designs are gradually getting popular, I want to push my designs beyond the conventional isometric 3D designs. I want them to head towards something more realistic while also keeping their originality.

Now, lets get back to business. I want to take it back to the roots (Africans, a-woo! I know some of us know that popular JJC song. Lol.) Well, this is the first design from my Isometric Nigeria 3D landmark project, and its also one of the most complex. I believed that if I could successfully design this building (the National Theater, in Lagos) I could easily design any other isometric 3D object.

Stage 1: Pre-design

I started out by spending some time studying the building. I used a picture I got off Google as a reference point by bringing the picture into my Figma workspace. While I worked on the design, I kept studying the reference image and continued to tweak the design until I got something nicely crafted.

I approach my designs like I want to draw or paint them on paper. I study the shadows, perspective, contrast, direction, and reflection of light. These are some of the most important elements and features to look out for when creating isometric 3D objects and realistic illustrations. Strategically applying gradient layers give objects that solid appearance.

Stage 2: Design proper (Creating upper seat-section of the theater)

First, I created the body of the upper part of the building using a rectangle. I then modified the rectangle to give me a shape similar to...

01:35

How to create a Bitcoin wallet address from a private key freeCodeCamp - Medium

In the previous article, we looked at different methods to generate a private key. Whatever method you choose, youll end up with 32 bytes of data. Heres the one that we got at the end of that article:

60cf347dbc59d31c1358c8e5cf5e45b822ab85b79cb32a9f3d98184779a9efc2

Well use this private key throughout the article to derive both a public key and the address for the Bitcoin wallet.

What we want to do is to apply a series of conversions to the private key to get a public key and then a wallet address. Most of these conversions are called hash functions. These hash functions are one-way conversions that cant be reversed. We wont go to the mechanics of the functions themselvesthere are plenty of great articles that cover that. Instead, we will look at how using these functions in the correct order can lead you to the Bitcoin wallet address that you can use.

Elliptic Curve Cryptography

The first thing we need to do is to apply the ECDSA or Elliptic Curve Digital Signature Algorithm to our private key. An elliptic curve is a curve defined by the equation y = x + ax + b with a chosen a and b. There is a whole family of such curves that are widely known and used. Bitcoin uses the secp256k1 curve. If you want to learn more about Elliptic Curve Cryptography, Ill refer you to this article.

By applying the ECDSA to the private key, we get a 64-byte integer. This consists of two 32-byte integers that represent the X and Y of the point on the elliptic curve, concatenated together.

For our example, we got: 1e7bcc70c72770dbb72fea022e8a6d07f814d2ebe4de9ae3f7af75bf706902a7b73ff919898c836396a6b0c96812c3213b99372050853bd1678da0ead14487d7.

In Python, it would look like this:

private_key_bytes = codecs.decode(private_key, hex)
# Get ECDSA public key
key = ecdsa.SigningKey.from_string(private_key_bytes, curve=ecdsa.SECP256k1).verifying_key
key_bytes = key.to_string()
key_hex = codecs.encode(key_bytes, hex)

Note: as you can see from the code, before I used a method from the ecdsa module, I decoded the private key using codecs. This is relevant more to the Python and less to the algorithm itself, but I will explain what are we doing here to remove possible confusion.

In Python, there are at least two classes that can keep the private and public keys: str and bytes. The first is a string and the second is a byte array. Cryptographic methods in Python work with a bytes class, taking it as input and returning it as the result.

Now, theres a little catch: a string, say, 4f3c does not equal the byte array 4f3c, it equals the byte array...

00:38

How to kill your freelance demons freeCodeCamp - Medium

Struggling to land the best freelance jobs? Use this solid advice from those whove been there and done it.

With freelancers accounting for 35% of the US population and soaring globally, its getting positively Hobbesian out there. Whether youre dipping your pasty copywriter toe or are a seasoned development guru, theres plenty of work for everyone if you know where to look.

Keep the work flowing with these tips from a grizzled freelance copywriter with plenty of experience in the freelance world.

Hello, World Wide Web?

Unsurprisingly, the internet has quite a lot to offer a freelancer-in-training. But with so many pay-to-work pyramid schemes, and sites promising $10,000 for an article, it can be hard to sort the fact from the too-good-to-be-true.

Perfect for the newly minted freelancer lacking a substantial portfolio, job sites like Freelancer.com, Upwork, and Lancelist tend to offer low pay but plenty of variety. Aim for companies who are willing to put you on a retainer rather than one-off jobs which wont translate into regular work.

Workout app developer? Korean food blogger? Theres a directory for that.

Yep, forget about the Yellow Pages, the internet also has a plethora of directories for every career calling your grandparents dont think is a real job. Theres usually a joining fee, so its good to shop around.

Show your beautiful face

From your hairdresser to pub landlord, its easy to forget that everyone is a potential client or clients friend or partner. Approaching local businesses can be a great way to kickstart your portfolio and get recommended to other, more inspiring contacts.

When the clients aint biting, a little shameless self-promotion can donot wonders, exactly, but something good.

Keep an eye out for local business meetings/artisanal bakery takeovers and offer to do a talk on your latest success. Whipping out the laser pointer is a great way to get noticed, and youll probably meet some kindred spirits at the after party to kick those freelance lonelies.

Whether its a local blog, podcast, or reality TV, getting interviewed can help raise your head above the parapet (in a good way). Take every opportunity to get up on the podium. Just dont forget to include a contact, repeat your name, and let people know youre available for hire.

Mine your contacts

Urgh. I know. Cold calling is about as enjoyable as a trip to the dentist in the 1950s, but its a useful start to a freelance career. Send a personalised introductory email explaining what you can do for their company/incubator/dictatorship.

Heres comes the crucial bit: follow up with a friendly ph...

00:29

How to design a cold email for a CEO with a 100% read, click, and response rate freeCodeCamp - Medium

The Emailers Guide To The Galaxy: Part II

The start of my cold email

As I explained in my last post, Im 17, so my network isnt too big just yet. For me, cold emails are the easiest and most direct way to reach a founder. Over the past year, Ive sent over one hundred emails to CEOs, founders, and heads of design, and have gotten a response from over 80% of them.

My emails started out unconventionallyfilled with long paragraphs, massive intros, and frankly, very little about the recipient. But, with A/B tests, just the right amount of analytics, and persistence, I was able to notice what stuck.

Most people just assume theyre bad writers, others think it takes a degree in communications. Not me. In this post, Im going to give you a play by play handbook on what I learned in the past year. And, by the end, you should be able to lock down a meeting with whomever you want.

https://medium.com/media/e129383407540f6b213501ba9ed70ead/href

The email address

Depending on whom youre emailing, the address you choose to send your email to can decide your fate.

Why? I get into this in the first post of this series - How to find any CEOs email address in minutes. I touch on deciding which email address to use in the first part of that post. You should probably read that before getting into this one.

Composing the email

The subject line

In the world of email, the battle starts before your message is even opened.

https://medium.com/media/1b5012f2bb5503a604c327999bc05179/href

Its your subject line against the rest in their inbox. Youre a mere peasant among the hundreds of others vying for the kings attention. To get in front of the throne, to have the king hear your thought...

00:27

How to find any CEOs email address in minutes freeCodeCamp - Medium

The Emailers Guide To The Galaxy: Part I

How do I find that CEOs email?

Im 17, so my network isnt too big, just yet. For me, cold emails are the easiest and most direct way to reach a founder. Over the past year, Ive found out not only how to find a tech leaders work email address, but their personal one as well.

In this post, Ill teach you the ins and outs of searching for anyone in techs email address. So, sit down, download Google Chrome, open your Gmail, and lets get to work.

Part 1: The easy way out

The easiest email to find is a work email, but this is a double-edged sword. Although easier to find, this person could have:

  1. hundreds upon hundreds of emails flooding their inbox every day
  2. a filter to weed your email out, or
  3. an executive assistant (EA) to personally select the emails they should read.

If this is a strictly business-related email, or you know this founder doesnt receive over 400 emails a day, the method described below is the right one for you.

Remember, emailing is all about respect, so weigh the two options carefully. Does this person want you to email them in their personal inbox?

Step 1: Finding an email using Hunter.io

Go to the Hunter website and sign up for an account (also download their plug-in for Chrome).

Hunter is an insanely powerful tool. Were going to use it in more than one way in this post. It allows you to find all emails attached to a certain website, verify that an email is accepted by their server, and even stores your leads for later.

Step 2: Search for the relevant information

Go to your Hunter dashboard and Search for the information youre after. You can type in the website of your persons company. Hunter conveniently finds all the emails associated with the server.

Your persons email might not be there, but whats important is the pattern you find. It most probably would be any of the patterns below:

  • [first_name]@company.com
  • [first_initial][last_name]@company.com
  • [first_name][last_name]@company.com.

Now that you have a pattern, its time to try it out.

Step 3: Verify the email in Hunter

Go to the Verifier tab in Hunter:

Type in what you think your persons email is via the pattern. Youll see one of three resul...

00:26

How to send an email the right way: track, follow up, and get a response. freeCodeCamp - Medium

The Emailers Guide To The Galaxy: Part III

How can I track this email?

As I discussed in my previous two posts, Im 17, so my network isnt too big just yet. For me, cold emails are the easiest and most direct way to reach a founder. Over the past year, Ive sent over 100 emails to CEOs, founders, and heads of design, and have figured out how to ensure a response.

Contrary to what most people think, emailing isnt as simple as writing, sending, and waiting. Once you click the send button, the journeys only getting started.

Quick note: this is the third post in a series all about cold-emailing. If you havent read How to find any CEOs email address in minutes or How to design a cold email for a CEO with a 100% read, click, and response rate, I recommend giving those a look before starting here.

This post is all about maximizing your chances of getting a response. So, were diving into the specifics of when to send your email, how to track it, and why you should follow up to strengthen your chances of hearing back. So, sit down, open Chrome, and lets get to work.

https://medium.com/media/0566ab63dba8082297dd7989cca38976/href

Before clicking send

Right now, that send button youre looking at does one thing and one thing only: moves your email from your drafts folder into your recipients inbox. To keep an eye on your emails progress, that email needs to be tracker-enabled.

What is an email tracker?

At the most basic level, an email tracker, well, tracks your email. It tells you when its been opened.

But, as you go more in-depth, a tracker can reveal a bunch more info:

  • How many times its been opened
  • Where its been opened
  • Whos opened it
  • When they went to your website
  • Where theyve gone on your website

Why are these things important? With data on where and when your email has been opened, you can infer if they are traveling, are at home, or are even at their office. Figuring out the best time to approach t...

00:13

Want to learn TypeScript? Heres our free 22-part course. freeCodeCamp - Medium

Click the image to get to the course.

TypeScript has been gaining a lot of popularity amongst JavaScript developers the last few years. And its no wonder, as TypeScript code tends to be less error-prone, more readable and easier to maintain.

So weve partnered up with the eminent online instructor Dylan C. Israel and created a free TypeScript course on Scrimba. The course contains 22 lessons, and is for people who already know JavaScript but who want a quick intro to TypeScript.

Take the course for free here.

Now lets have a look at each of the lectures in the course.

Part #1: Introduction

In the introductory screencast, Dylan gives an overview of why you should learn TypeScript, and how the course is laid out. He also tells you a little bit about himself, so that you are familiar with him before jumping into the coding stuff.

Part #2: Variable types

Compile time type-checking is one of the most important features of TypeScript. It lets us catch errors related to the types of data at compile time. This lesson explains the data types available in TypeScript.

let firstName: string;
let age: number;
let isMarried: boolean;

You can see how we have types attached to all the variables. If we try to put a string value in place of a number type variable, TypeScript will catch it at compile time.

Part #3: Multiple types

In TypeScript, we keep a single type for a variable but that is not possible every time. So, instead, TypeScript provides us with theany type. This means we can assign multiple types of values to one variable.

let myVariable: any = 'Hello World';
myVariable = 10;
myVariable = false;

Above, weve declared myVariable with any type. First we assigned it a string, next a number, and finally a boolean. This is possible because of the any type.

Part #4: Sub types

Sub types are used when we are unaware of the value of the variable. TypeScript provides us with two sub types: null and undefined. This lesson explains when we should use either of those.

let myVariable: number = undefined;

The variable myVariable has been assigned the value of undefined because, at this point in time, we dont know what it is going to be. We can also use null here.

Part #5: Implicit vs explicit typing

Part 5 talks about the difference between implicit and explicit typing. In the examples above, we saw explicit types whe...

IndyWatch Education Feed Archiver

Go Back:30 Days | 7 Days | 2 Days | 1 Day

IndyWatch Education Feed Today.

Go Forward:1 Day | 2 Days | 7 Days | 30 Days

IndyWatch Education Feed was generated at Community Resources IndyWatch.

Resource generated at IndyWatch using aliasfeed and rawdog