The month of June 2021 has been about Funding, SEO, Management skills. How about you?

SATURDAY, JULY 3, 2021 12:00 AM    

In the month of June, my learning in my startup has taken me deeper into the realm of management and revisiting the space of SEO. SEO has always been a ‘black box’ for me. The intentionality to make sense of it helps me to deepen my understanding behind this big word SEO.


In the month of June, i’ve also started to read up more on startup funding scene. Let me know which topics will be most interesting for you all.


Lets keep learning together




Cool tech


Handsfree.js


How you can integrate your webcam and eyes detection into your browser web app. Definitely something to look into.


General


How to win at Risk using System Thinking


Understanding system think helps you to appreciate and factor in delays as part of the causality flow. Major changes involving multiple parts often do not happen over night. It happens gradually with delay - affecting one part of the larger system at a time.


While delay is generally not good and are sought to be avoided in most instances, it is largely unavoidable in system thinking. Embrace them and you will find yourself more equipped to face the reality at hand.


Wayfinder


a Browser game with really nice graphics!


Young workers expect their workplace to improve their wellbeing


Build your product based on reality


Always iterate quickly, test hypothesis, and talk to users. Get your feet consistently grounded to your target market’s users. Understand their pain points. Hear if your product is actually solving the pain point you initially intended to solve.


Don’t live in your own bubble, or up in the cloud. Get close to your users.


Hotels on rails


For our European friends or travellers, this might be a good initiative indirectly benefiting you once the travel ban is lifted.


4 challenges to SEO for big companies


  1. Rank Tracking Is Difficult To Scale
  2. Rank Tracking Is Difficult To Maintain
  3. Rank Tracking Doesn’t Provide All The Valuable Details
  4. Rank Tracking Is Missing a Lot of Context

Interactive Period Table


You can go in-depth into different science fates on each elements.


Learning how to contribute to Open Source Software Projects


Corresponding learning outcomes associated with technology range from analysis and evaluation to application and creation, including the following:


  • Navigating through a project’s assets, such as software code, issues, documentation, and pull requests;
  • Evaluating swiftly the product and process quality of software systems or components, as is often required in modern software reuse;
  • Configuring, building, running, and debugging third-party code;
  • Setting up and running software intensive systems with diverse software and hardware requirements. In the course I run, these have included mobile phones, car electronics, application servers, databases, containers, IoT equipment, and embedded devices;
  • Choosing realistic contribution goals. (Initially students tend to wildly overestimate their ability to contribute to a project.) This is a key activity in agile development sprints;
  • Reading third-party code to identify where their additions or fixes need to be made;
  • Modifying a large third-party system by adding a new feature or fixing a bug;
  • Writing tests that demonstrate a contribution is working as expected now and into the future;
  • Working with software systems developed using multiple programming languages and tools; students are often surprised to find out that knowledge of an Integrated Development Environment (IDE) is by no means a passport for contributing to a project;
  • Documenting their work, typically using a declarative markup language, for example Markdown or documentation generator code comments;
  • Following sophisticated configuration management (version control) workflows, such as working on issue branches and rebasing code commits; and
  • Passing pre-commit and continuous integration checks and tests.

These are meaningful learning outcomes that every school on earth should be including in their computing degrees. Perhaps these can be added into our own internship learning outcomes as well.




Management


Why startups should be quick to fire


Or should they not? You want to always support your employees to transit out of your company. You have to do whatever that is in best interest for your company, and most often, possibly without being an asshole. You owe your employees an obligation to be professional in the transition and supporting them out of your company. After all, in an early startup, they took a bet to jump into your company.


When to fire, when to keep your employees


Sit them down, lay out clearly the delta between expectations and performance over the first few weeks of them in their job. Giving them a fair chance to change their behaviour, and being clear whether or not this person’s behaviour was helping to grow the company. Be clear on which activities were not contributing to their state goals, and they should be dropped.


For a start, you need to provide daily feedback. You need to give them the right resource. You need to set clear goals with them.


  • Evaluate whether you’re investing or wasting time.

Does this person actually have the necessary skills to get the job done? Else the fault is on you as the hirer.
If they have the skills, how can they meet the goals you’ve set for them.


  • Be critical with yourself

Look at where you may have failed to set up your employees for success.


Hire slow and fire fast, but remember to think twice before you let go of an underperforming employee


Step by step guide to firing someone


  • Start by creating a transition plan
    Choose the day and time for the termination deliberately.

Doing it early in the day, early in the week, encourages the employee to get right to work on finding another job and reduces the chances that he’ll spend the weekend moping in a black hole or — worse — plotting revenge. Friday after­noons, on the other hand, often create the minimum amount of disruption to the rest of the staff.


  • Run it by a jury first

To make sure you’re on soid ground in terminating an employee, imagine yourself defending your action in front of a jury. Assume you are on the witness stand and the employee’s lawyer is attempting to prove that the firing was unjust, unfair, and vindictive.


Look for anything that could be twisted to suggest that the real reason for the termination is not the individual’s performance but rather a pretext or personal grudge.


  • Take it step by step
    Write down the most important things you plan to say and stick to your script.
    Recognize what you’re up to. Its not a counselling session. Its the announcement that an irrevocable decision has been made to discharge the individual.

  1. Get right to the point. Skip the small talks, start the termination meeting by saying. I’ve got some bad news for you. By announcing right from the start that there’s bad news ahead will rivet the individual’s attention on what’s coming next.
  2. Break the bad news. state the reason for the termination in one or two short sentences. Then tell the person directly that he or she has been terminated. Use the past tence. Your employment has been terminated. We’ve talked several times about quality problems in your work. Last week’s work has indicated that your department still has the lowest quality. We have decided that a change must be made, and as of today, your employment has been terminated.

Things not to do:


  • Do not say: “I understand how you feel.” You don’t.
  • Do not say “I know that this hurts right now but later on you’ll realize that this is the best thing that could have happened.” It isn’t. It is a very bad thing.
  • Avoid justifications: “You should have known”
  • Keep a box of tissues available.
  • Remember the golden rule - The Golden Rule is the principle of treating others as one wants to be treated.

  1. Listen to what the employee has to say. Some common reactions are shock, denial, anger, and grief. Identify which reaction your employee is experience and respond accordingly.

  1. Cover everything essential

Be specific about what will happen next: pay, benefits, unused vacation time, references, outplacement, explanations to coworkers, ongoing projects. This is the one time you cannot say: “I’ll get back to you on that”


  1. Wrap it up graciously
    Its best to schedule termination meeting at the end of a work day so the meeting takes place while coworkers are leaving. Close by thanking the individual for her contributions to the company. Walk the now ex-employee back to her desk and wait while she collects any personal items. Go to the exit together, shake hands, wish her well and part with both your dignities intact.

Avoid misdirected compassion


They become so concerned about the adverse impact on the employee to be discharged that they forget about all the people who manage to do their jobs and meet our expectations in spite of having as many personal problems and difficulties as the terminatee has.


When terminations are well justified and professionally executed, the rest of the work group realizes that this is a good place to work


A final note: The most common problem with terminations is that they don’t happen as fast as they should.


Once the decision has been made to pull the plug and start over, don’t dilly-dally in the misguided hope that — somehow — things may still work out.


its not the people you fire who make your life miserable. it’s the ones you don’t.


How do you go into an IPO


Interesting insights for new comers into the startup scene. Understand the hoops required to jump over to make an IPO work; but imagine the information is for 3. year olds.


Remember, in investment banking, the hands you shake are more important than the things you make.


25 Effective ways of High Impact Managers


Focus vs coordination


It goes beyond “it depends” - it includes what does it depends on, and how does it depends?


Healthy teams know which moments requires more focus, and which ones requires more coordination. Our changing focus-coordination depends on multiple factors, including problems at hand, personalities in the team, and these factors requires us to constantly adapt to the present.


There is a time to communicate, there is a time to focus on problems at hand. Whichever you are doing, do it well, do it right. You need both focus and coordination to win the win. Finding the right balance based on present factors is crucial to win the battles of today, and prepare for the battles of tomorrow - situations with new sets of constraints and factors of consideration.




Technology


Tracking users without cookie


Adding robots meta to communicate with search engine crawlers


Books to learn about networking


You want to explode dev ops and in-depth understanding on server management, networking is a must-know.


Book on networking


Speed is a feature


  • Latency: The time from the source sending a packet to the destination receiving it.
  • bandwidth: Maximum throughput of alogical or physical communication path.

Understanding the two factors, you can then deive deep into the internals and performance characteristics of Internet networking protocols: TCP, UDP, and etc.


I will continue this in a separate post itself. This article is amazing! So please take some time to read it if you wish to deepen your networking knowledge. Its a Jem!


Coding a TCP IP stack


What does that even mean? You can read up and check it out


What are software entropies, and how to minimize it


JavaScript is weird


Very interesting set of questions to test your knowledge of JavaScript. The git repo is even cooler with interesting insights into JavaScript’s syntax


Create your team culture based on good software engineering principles


Good principles increases capacity of the team. Improved capacity of team improves behaviour that will produce good desired outcomes.


Principles help to create constrains on what behaviours are considered good outcome generating behaviours.


Software Estimations are hard


Do it anyways.


One major “secret” to advancing in a technical career is learning how to give accurate estimates.


Technology - SEO


SEO Analysis


Figuring out what are the components of a website with good SEO setup will be helpful for you to know how to improve it. Take the time to figure it out.


Understanding google’s Core Web Vitals for better SEO results


Loading - largest content paint
Interactivity - first input delay
Visual stability - Cumulative Layout Shift


These features look at how long it takes for your page to start displaying the most important elements, how quickly your site responds to user interactions, and how often layout shifts impact the user experience


More details on Core Web Vitals here


We need to delve deeper into understanding the factors of consideration in SEO.


Evaluating page experience for a better web


Top Story Feature in Search on mobile.
AMP requirement was removed for Top Stories Eligibility


Treat clusters as cattles


that means your data has to stay outside of your clusters and that is reasonable. Put data wherever data belongs. In the database or data warehouse.


In order to achieve this similarity, you choose to follow the GitOps pattern, not only for your service deployments to be reproducible. Also the desired states for the tooling, the Kubernetes installation itself, CPU, memory, networking and storage you just declare in Git and let operator binaries do their work. With comprehensive GitOps, you have your day-one and day-two operations automated. And you get disaster recovery for free.


Consider gitOps pattern. Very interesting topic for better management of resources at scale.


If you want to achieve GitOps


  1. Your entire system has to be described declaratively. Inclusive of your Memory, CPU allocations.

Declaring your entire application in code, you can easily perform disaster recovery from scratch by the running of your script. The thought process in the architectural setup has been ‘documented’ down.


  1. The canonical desired system state is versioned in Git.

Storing your configuration in git, you now have a source of truth which everything is derived and driven from. This trivialized rollbacks, where you can git revert to go back to your previous application state.


  1. Approved changes can be automatically applied to the system.

Once you have a declared state in Git, you can allow any changes to that state be automatically applied to your system. You or any other engineers do not need cluster credentials to make a change to your system. With GitOps, there is a segregated environment which the state definition lives outside.


  1. Software agents can ensure correctness and alert on divergence.

Once the state of your system is declared and kept under version control, software agents can inform you whenever reality doesn’t match your expectations.  The use of agents also ensures that your entire system is self-healing.


Self healing is possible with declarative configurations, in which the number of application required to run is declared and if issues arise and causes a deviation, your application has a source of truth to act upon. But all that is mentioned are handled by Kubernetes already. In a border sense, issues that are caused by humans arise can now be tracked and restored.


And by self-healing, we don’t just mean when nodes or pods fail—those are handled by Kubernetes—but in a broader sense, like in the case of human error.  In this case, software agents act as the feedback and control loop for your operations.



Benefits of GitOps includes


  1. Increased Productivity
  2. Enhanced Developer Experience
  3. Improved Stability
  4. Higher Reliability
  5. Consistency and Standardization
  6. Stronger Security Guarantees

Given Git’s strong correctness and security guarantees, backed by strong cryptography to track and manage chanages, signing changes to prove authorship and origin is key to a secure definition of the cluster’s desired state.


No one tool encapsulates the entire GitOps process currently which gives you flexibility in the selection of tools for different components of the workflow.


Whatever you choose for your delivery pipeline, applying GitOps best practises with Git (or any version control) should be as an integral component of your process. Doing so will make the transition to continuous delivery easier. This is true not only from a technical point of view but also from a cultural perspective.


Funding Scene


neo4js got funded



TLDR;


Not sure how has 2021 has been for you. But this year has been a deep delve into the startup scene - understanding how funding works. Understanding what kind of implications does a funding have in the industry in which the company was funded. Understanding a tad more on what investors look out for in their investment strategy. It has been intense and it will only get more intense along the way.