Tuesday, April 16, 2024

Everything Is For Sale

I'm living in a zone, that had experienced tough times during the WW2, from deportations, shelling, and hunger to hyperinflation. In 1944 in public places you could see people selling artwork, rare books, or even household objects, because there were no jobs.

Major natural disasters, civil unrests, or devastating wars are reshaping the local society. Depending on the cultural and educational backgrounds of the community members, the spontaneously emerging market-based relationships may degrade into command-and-control based relationships, or continuous warfare between rival groups.

Either way, the market continues to operate, and in zones with electricity and Internet coverage the online market will connect people. 

In the 90's the former COMECON countries went through major economic restructurings, and in certain former Soviet states the barter was the king, many factory workers received products instead of payment. In addition to supplying their friends and families with goods received as salaries, people were placing announcements into free advertising brochures - the predecessors of the online marketplaces.

The proliferation of the Internet has brought with him the more and more specialized marketplaces, complementing the web-shops, and local advertising websites. 

It's not a new thesis, that the structure of a given population's supply and demand is characteristic to the state of their local economy, but the job market looks to me even more interesting, because it says a lot about how people controlling significant resources are thinking about the future of their industries and/or geographic zones.

As a long term telecommuter I've seen the rise, consolidation and restructuring of various freelancer marketplaces. After 2015 the numerous junior and middle level programmer job offers have been replaced gradually by a reduced number of offers for senior level specialists in development, QA, and cloud infrastructure. 

Currently there is high demand for marketing wizards, sellers, and managers expected to run smaller companies or teams. It looks like business people aren't into investing in jobs, they are mostly after cash. Since less jobs does mean less purchasing power, the "everything is for sale" psychosis looks like a signal of upcoming changes in the macroeconomic landscape.



Thursday, January 25, 2024

Domain Knowledge First

 Since the appearance of computer software there have been ongoing debates about software development approaches.

When I started to use MS Visual Studio, the product has already offered support both for  the "database first" and the "code first" approaches. 

The proliferation of websites, web applications, and then the mobile apps have created demand for rapid software development tools, and have contributed to the acceptance of the "UI first" software development approach.

While the "database first" approach is still relevant to industries with slowly changing technological and business processes, the "UI first" approach is the best bet for agile teams.

Interviewing users, keeping in touch with the aim of refining the user interfaces, and then getting the client's approval require both soft skills and specific domain knowledge. 

When I was collaborating with an agency specializing in bespoke software, I was encouraged to ask questions about the business logic, in order to uncover possible gaps in the UI drafts and flows.

Missing a task, a parameter, or a criterion from the user's processes leads to issues during software design and implementation. Catching and resolving those issues as early as possible is important, fixing them later in time requires more resources (waste), and produces frictions between developers and users.

"Domain knowledge first" is about preventing the mentioned waste and frictions. Whatever software a team is going to develop, at least one of the team members needs to take up the business analyst's role, to learn about the business processes, to stay in loop with users, and to review the UI drafts and flows.

10-15 years ago the high demand for websites and apps have produced high demand for front-end developers, and in short time a diversified market offer of education in the field of front-end development. Up to a point, the newly certified or graduate task force has been absorbed by the job market. 

Then the second generation cloud technologies have contributed to the proliferation of the SaaS products. Due to the competing offers of cloud-based office tools, visual designers, and other utilities, these products have become affordable to most companies. 

Consequently, these days a front-end developer needs to diversify his/her skills to stay employed, and learning more about the company's processes (domain knowledge) might be a perfect starting point.




Thursday, January 18, 2024

Dream Big?

Most business, career, or personal development books are encouraging the reader to dream big, and the authors do exemplify their advice with presenting the histories of well-known people, who achieved their dreams against all odds.

Those presentations rarely depict the numerous failures interwoven with lessons learned and changes applied, and the years of "stand up and fight" exercises teaching us that success is a by-product, gathering and keeping nearby the right team is the biggest value we can be proud of. 

Last year, in a podcast a freelance reporter stated that in his opinion there are two types of community cultures: "mantis" (searching for resources, and using up everything found), and "cautious" (capping the consumption, so to assure the renewal of resources for future needs).

I think the same mentalities are driving one's actions when we are working on finding our way in life, transforming our dreams in projects, and shaping our human relationships.

Mantis individuals are easygoing when it comes to using, learning from, and stepping over their colleagues and partners. They aren't necessarily greedy or malicious, just all their trips are business trips, and you need to have a developed sense of humor to enjoy their company on the long run.

Cautious individuals are slow in building relationships, and the other party is usually feeling enriched by some useful know-how, an achievement, or a nice friendship resulting from their interactions.

The history is showing that both mantis and cautious people may become well-known professionals, influencers, company leaders, or even presidents. The difference is in how they've touched the lives of others.

The cautious versus mantis mentality may decide the fate of a relationship, a startup, a business, or even a country. Dreaming big is great, changing our own mindset, attitude, and priorities is hard.


Saturday, November 18, 2023

OODA Is the New Agile

 As a student in a communist country I was not taught about budgeting - the mysteries of resource management were reserved for a reduced number of people tasked by political leaders with the elaboration of the famous five-year plans.

Even the director boards of the biggest companies were receiving fixed funds, fixed salary levels, and strict limits on import goods. The lead economist of each entity was sending periodically a budget plan to the appropriate ministry or local authority, but he/she received approval only for the amounts of resources considered necessary by the "higher forums".

This enormously long and slow decision loop has created the false perception of economic stability in simple people, and the illusion of infallibility in the dominant class. And the regime was disintegrating slowly but surely, each bad decision contributing to the process.

The poverty produced and/or maintained by inadequate governances is affecting numerous countries, which have never experienced a communist dictatorship. So a low standard of living per se does not seem to lead to the replacement of this particular social contract, rather the incapability of the decision process to operate adaptations to the changing environment.

The agile way of managing resources is giving adequate results in the realm of a globalized market dominated by rapid technical and economical changes. While self-management, and regularly hunting for  temporary contracts is a pill hard to swallow for many people grown in a country offering generous financial aids, for billions agile is not a new lifestyle, and in most private companies the manager's role comes together with a money fund for hiring/firing people and purchasing goods, and a calendar with goals to achieve and milestones to add in.

In a fast-paced world the director board is great for defining strategic goals, but excessively controlling the other decision makers would hinder people from adding value to the company's product. It's not a coincidence, that soft skills like team work and good communication are highly appreciated in agile companies, that's the way how they work.

Last but not least, the army for a society is like the immune system for the human body, a necessary evil operating with the best possible technology. That's why OODA was developed by an air force colonel, and it was borrowed by the IT&C industry. When a small team of flying units are patrolling half of Europe, then their mutual respect and trust are making history.


Monday, November 21, 2022

Free Lunch

 The latest happenings in the realms of the crypto business and social media giants are confirming the thesis that "the free market will always regulate itself". The IT&C people with some business acumen or analytical skills were aware that changes were around the corner in both noisy domains.

In my opinion using crypto does make sense for exchanging currencies in certain unusual situations, but neither for regular shopping nor for savings. In general, supporting a cult of tricky guys at the expense of creative and hardworking people is leading to a non-resilient society.

In contrast to the web3 projects absorbing numerous juniors, the big social media companies were trying to attract seasoned workforce and retaining top talents. The novelty of digital marketing technologies and user tracking produced a hype around the AI algorithms developed and maintained by social media giants, and it generated a big number of jobs.

The data collected by user tracking can be used for showing personalized content to the user, for market analysis, and various predictions. As most people won't pay a membership fee for using social media, these companies are making money with adverts.

Over the years Facebook reinvented itself as the main global facilitator of local businesses, but Twitter was trying to keep an acceptable balance between offering a great experience to their unique mesh of communities and showing targeted adverts. 

While Facebook has been growing an algorithm focused on precisely targeted adverts and content of the user's liking, Twitter was building an algorithm meant to bring together people interested in similar ideas, activities, or projects. In this respect Twitter's algorithm was offering a unique social value - at least until the company's recent acquisition.

In 2016 LinkedIn was acquired by Microsoft and repurposed as a hiring & carrier building site. I consider that for the time being their social media features are not really relevant. 

In 2019 the free tier of Google+ was shut down. They concluded that they got too many challenges for the existing user base. In other words, running an average social media site needs paying subscribers. In order to get the economies of scale necessary for supporting a freemium package (free lunch) the minimum number of unique users could be around 200 million - that would explain E.M.s great interest in counting the bots.


Monday, February 21, 2022

Enterprise vs Commercial Apps

 From the user's point of view there is no clear difference between them. The marketing narrative has always been that an app used in various big companies is a safe choice for small-medium businesses. You know.. if this or that cool-looking app is used in X company by thousands of executives, then it must be great for your shop.

From the developer's point of view the landscape has changed drastically during the last decades. In the 80s the hardware and software were not too sophisticated, it was possible to draft a compiler in a couple of weeks. Nowadays in a couple of weeks we may get ready the first demo of an app based on existing frameworks, third-party components, and services.

Over the years the software development tools have grown in complexity, have gone through differentiation and specialization processes in order to serve a rapidly growing number of domains and use cases.

As a result an IT&C student willing to work at an enterprise needs to acquire experience in specific ERP or CRM software. Configuring and administering standardized cloud-based solutions, and creating workflows with their designer extensions require a significant learning curve.

In case our IT&C student is willing to work in a software shop, he or she needs to acquire experience in  scripting languages, tools, and procedures came into existence for growing and maintaining commercial apps. Mastering all that also needs much time and dedication.

A specialist in enterprise software needs professional reconversion and years of experience to become specialist in commercial software, and vice versa, because both domains are evolving and changing rapidly.

And who is the winner? The infrastructure guys. Always. We all need a well functioning network infrastructure. That's why the software giants are investing in data centers, submarine cables, satellites, and security.



Saturday, February 19, 2022

Relativization

Two years ago many millions of jobs have disappeared practically overnight, and people facing eviction or living on welfare were pushed to start shifting towards a new economic structure.

At present my zone is covered by half a dozen of delivery networks, and some of their agents are using  handhelds with great software - so where there is a will, there is a way.

The employees required to work from home have faced a more or less tough accommodation period. While telecommuting is not a new invention, it's an entirely different story if you've chosen that lifestyle as a good fit for your personality, or you were required to stay at home against your wish.

The protagonists of the big resignation are people with sufficient financial reserves to carry out successfully a professional reconversion, or their skillsets are currently in high demand. These guys have  experienced the pros and cons of their work environments, and have decided that they have enough.

The big quit is not a phenomenon in the Silicon Walley but a general tendency, including my country. People facing the passing away of a loved one are experiencing high stress levels, even if not entirely consciously. In most cases this process is determining them to reconsider their goals, plans, and priorities.

Working from home is great while we can meet in person whenever we want, because those water cooler conversations have always been the best quality food for our brains. The undesired isolation made us understood that we are social beings, we need each other to become our best selves.

The too frequent and too  long virtual meetings have triggered debates about how good or bad is agile,  Jira, and many other productivity tools. Is the wire or software the culprit for someone loving to listen his/her own voice, or not ready to organize his/her ideas, or pushing for nonsense processes? 

Quitting is about following our own calling without hurting others. The pandemic taught us to relativize the importance of money in our lives, and to value people more than processes.


Friday, August 20, 2021

Hello PWA!

 About 20 years after the advent of the World Wide Web Google presented a new concept of web application: the PWA. This young cousin of the classic web applications has more capabilities than an ordinary website, but its access to features originally reserved to native applications is limited by the host OS.

The "cross platform and cross browser" characterization is not realistic for any kind of software application, not even for static websites. And more power comes with more responsibility: the PWA programmer has to elaborate a cache management strategy, has to get familiar with IndexedDB or one of its wrappers, has to keep in mind that LocalStorage and SessionStorage cannot be accessed by the ServiceWorker, and implementing certain features on Apple devices is not a walk in the park, or it's not possible at all.

Developing and maintaining a PWA is more demanding than working with a web application - that's why I've avoided so far to try out this genre. Now, after learning more about the subject matter I  understand that the automated services offered for converting websites into PWAs might generate app icons, splash screens, error pages, a manifest, and some broilerplate code for the ServiceWorker - which eventually won't error out from start, but JS code development and refactoring are needed to get it right.

The evolution of browsers and operating systems is going against hybrid apps - programmers using Ionic or similar tools are pushed to diversify their knowledge bases. The general tendency of the software giants to improve support for PWAs, and the spreading of PWAs as website replacements are pushing web developers to get familiar with this technology.

PWAs have been designed to enhance the user experience, and the designer's vision has met the user's real needs.


Sunday, June 13, 2021

Installing Jupyter Notebook with PIP

After spending years with online office solutions I've felt nostalgic for some desktop number crunching, and I've managed to install Jupyter Notebook on my old desktop with 32-bit Windows 10 and Python 3.8.

It took me some rounds of Internet research to troubleshoot the issues I've gotten during the process, but  doing a couple of ML home-works does not require the latest and greatest client machine. 

For interested visitors: below are the steps.

1. Update your PIP (the package manager is updated frequently, and getting the latest version might prevent certain issues).

pip install --upgrade pip

2. Install "wheel" in order to prevent a possible failure in step (3).

pip install wheel

3. Install the Jupyter Notebook module.

pip install notebook

4. Check the installation, (if you've gotten nonfatal errors during the installation process, the software might work as expected).

jupyter --version

5. Start the notebook server - your notebooks will run in the browser, this is the server module, and its command window indicates its status (be patient until the "home page" gets displayed in a browser tab).

jupyter notebook

6.  The "home page" is a folder view of your local machine, from there you can manage your notebooks, and shut down the notebook server.

7. Adding modules (libraries) to your notebook server, for example "numpy":

A. Create a new notebook or open an existing one.

B. Add a cell, and type in the following command:

%pip install numpy

C. Execute the command (run the cell content) - be patient, the log is displayed only at the end of the installation process.

Execute step (7) whenever you need to add a module, which is not recognized by your Jupiter Notebook installation. For example:

%pip install matplotlib

%pip install pandas

%pip install seaborn

%pip install sklearn

Enjoy the journey!


Saturday, April 24, 2021

Cables Into the Cloud

 The first undersee telegraph cable was laid in 1850 between England and France, and then TAT-1, the first transatlantic telephone cable with repeaters was inaugurated in 1956. It took more than a century to develop an economically feasible technical solution for preserving the signal quality.

Nowadays 99% of the intercontinental communication traffic is carried over by submarine cable systems, including 95%-98% of the global Internet traffic. Taking into account that most datacenters are located in buildings, "the cloud" is about sets of terrestrial systems dependent on a multi-vendor undersee cable infrastructure.

Starting with 2008 portable modular datacenters have been offered by IBM, Google, and Sun (pods built into standard shipping containers), and in 2020 Microsoft announced a successful experiment with an underwater pod, but all those still depend on the undersee cables.

Google and Facebook are the biggest investors in undersee communication cables - it's estimated that they own about 29% of the intercontinental cables, followed by Amazon and Microsoft with significantly less percentages.

In 2019 AWS and IBM Cloud announced plans to deploy satellite-based connectivity, but there is a long way to go until that technology will be able to take off the pressure of the underwater network.

The quantum technology is in its early childhood, currently used in cryptography as an alternative to resolve the key exchange problem.

In an epoch dominated by economic and social challenges we can't take for granted that the underwater backbone of the high-speed Internet will stay untouched by bad guys, having alternatives is of key importance. 

Going multi-cloud looks way better from strategic point of view, and on the job market there is already an increasing demand for network infrastructure and security specialists.