Используйте навыки работы с данными, чтобы создать 5 источников дохода

Используйте свои навыки работы с данными, чтобы создать пять различных дополнительных источников дохода.

Наука о данных стала востребованным навыком в последние годы, и ее применение не ограничивается только корпоративным сектором. Это открыло новые возможности для людей, чтобы создать несколько источников дохода, используя свои навыки.

В этой статье я расскажу, как вы можете использовать свои навыки работы с данными для создания пяти различных дополнительных источников дохода. От консультирования до написания и продажи онлайн-курсов — мы рассмотрим различные способы использования науки о данных для дополнительного заработка. Эта статья предоставит ценную информацию для тех, кто хочет расширить свой портфель доходов и максимально использовать свои навыки работы с данными.

Используйте свои навыки работы с данными, чтобы создать 5 источников дохода

Фото Кэти Харп на Unsplash

1. Письмо по науке о данных

Первый источник дохода, который вы можете использовать для получения дохода, — это написание статей по науке о данных. Писательское мастерство — это недооцененный навык в техническом сообществе, который может быть действительно ценным и помочь вам создать как дополнительный, так и пассивный доход. Очень хорошим вариантом для начала ведения блога является Medium , чтобы улучшить свои навыки и начать собирать аудиторию. 

Это поможет вам получать доход от партнерской программы Medium , который может составлять около 1000 долларов в месяц, если вам удастся достичь 100 тысяч просмотров в месяц. Это может быть достигнуто менее чем за год, если вы сосредоточитесь на этом.

В дополнение к этому вы начнете получать предложения от других веб-сайтов и онлайн-блогов писать для них. Это будет очень выгодно, так как за одну статью можно брать 100$ и выше. Вы можете проверить этот список блогов по науке о данных, которые могут платить вам за ваши статьи. 

Есть много тем, на которые вы можете написать, используя свои навыки работы с данными:

  • Практическое руководство и учебные пособия по науке о данных 
  • Проекты по науке о данных
  • Планы обучения навыкам работы с данными 
  • Советы по карьере в науке о данных 

Что мне действительно нравится в писательстве, так это то, что оно не только поможет вам получить хороший доход, но также поможет вам создать хороший личный бренд и продемонстрировать свои навыки работы с данными. В дополнение к этому, это также можно делать в любом месте и в любое время в своем собственном темпе, и это может создать много возможностей после этого, как вы увидите в следующих разделах.

Другим важным аспектом этого является создание собственного информационного бюллетеня. Это будет очень полезно, даже если это бесплатно. После этого вы можете использовать список адресов электронной почты для рекламы своего продукта, такого как курсы и электронные книги. Хорошим местом для начала рассылки является substack

2. Продажа электронных книг по науке о данных

Второй источник дохода, который вы можете получить, используя свои навыки работы с данными, — это продажа электронных книг по науке о данных. Вы можете начать этот поток дохода после того, как какое-то время будете вести блог по науке о данных. Основная причина этого заключается в том, что ведение блога растопит лед между вами и техническим письмом и отточит ваши навыки письма. 

Кроме того, Вы будете знать, какие темы люди действительно любят читать, а какие нет. Итак, теперь у вас есть навыки, аудитория и понимание рынка, чтобы вы могли использовать их для написания электронных книг, которые действительно люди хотели бы читать. 

Вы можете начать продавать свою электронную книгу на онлайн-платформах, таких как Gumroad . Если у вас все хорошо, вы можете продать свою книгу на Amazon после этого, чтобы продать ее в печатном виде. Чтобы рекламировать свою книгу, вы можете использовать информационный бюллетень, как упоминалось в предыдущем разделе. Кроме того, я настоятельно рекомендую создать собственный веб-сайт и продавать на нем свои продукты.

Подход, который я предпочитаю при написании электронной книги, заключается в том, чтобы сначала написать ее в виде серии статей в своем собственном блоге или на Medium, а затем преобразовать ее в электронную книгу. Таким образом, вы избежите боли, связанной с написанием полной книги за один раз, не получая никаких отзывов или указаний на успех книги, основанных на статистике статьи и взаимодействии людей с ней. 

3. Канал Data Science на YouTube

Третий источник дохода, который вы можете получить, — это создание канала на YouTube, посвященного науке о данных. Вы можете сделать этот шаг после того, как создадите сильную репутацию и личный онлайн-бренд, публикуя контент в Интернете и еженедельно ведя блоги. 

Публикация письменных блогов не только поможет вам создать хороший бренд, поэтому, когда вы публикуете видео, у вас уже будет широкая аудитория. Кроме того, вы можете создавать большинство своих видео на основе ранее написанных статей и использовать их в качестве сценариев для своих видео. Так вы не потратите много времени на подготовку сценариев и кодов для своих видео. Этот совет сэкономит вам много времени и поможет создавать больше видео.

Я также считаю, что запись видео на YouTube будет большим подспорьем для следующего источника дохода. Вы сломаете лед между вами и камерой и станете более уверенно записывать длинные видеоролики, а также приобретете практические навыки редактирования видео и создания интерактивных видеороликов. В дополнение к этому, ваша аудитория наладит с вами хорошее общение и будет более уверена в покупке ваших курсов, поскольку они видели ваше объяснение раньше. 

4. Продажа курсов по науке о данных

Четвертый источник дохода, который вы можете получить, используя свои навыки работы с данными, — это создание и продажа курсов по науке о данных. Поскольку создание высококачественных курсов требует очень больших затрат времени и ресурсов, я действительно советую вам подождать, пока у вас не будет большой аудитории, чтобы иметь возможность продавать свои курсы.

Важный совет — постарайтесь создавать более специализированные курсы, соответствующие личному бренду, который вы создаете. Так, например, старайтесь избегать курсов, которые действительно конкурентоспособны, таких как основы машинного обучения, python для специалистов по данным и так далее. Вместо этого сосредоточьтесь на более специализированных темах, связанных с темами, на которых вы сосредоточились раньше. Так, например, я написал более 10 статей о том, как оптимизировать ваш код на Python и написать более эффективный код на Python. Мои статьи получили очень хорошие отзывы, и я создал сильный бренд, который может дать очень хорошие советы о том, как писать оптимизированный код на Python. Поэтому очень разумный шаг — преобразовать это после добавления дополнительных деталей в краткий курс. 

И последний совет: постарайтесь иметь электронные книги для каждого курса, который вы создаете. Поскольку у вас будет организованный контент, и вы потратите время только на создание визуального контента.

Вот список платформ, которые вы можете использовать для продажи и монетизации своих курсов:

5. Наставничество в науке о данных

Последний метод, который вы можете использовать для монетизации своих навыков в области науки о данных, — это наставничество и консультирование. Как только вы создадите сильный личный бренд и у вас будет большая аудитория, вы можете предложить оплачиваемое долгосрочное наставничество и разовые сеансы. 

Вы можете предлагать обзоры проектов, отзывы о резюме и портфолио, пробные интервью и занятия по плану обучения. Помимо долгосрочного наставничества, при котором вы ведете своего подопечного из определенной точки А в точку Б в его карьере. 

Лично я использую две основные платформы для наставничества: Calendly и Mentorcruise . Я использую Calendly для разовых сеансов наставничества, поскольку это дает мне большую гибкость в отношении временных интервалов и вариантов оплаты. Я использую Mentorcrusie для долгосрочных сессий наставничества, поскольку платформа будет обрабатывать все, что происходит между мной и подопечным, и гарантировать, что мы оба получим максимальную отдачу от процесса наставничества. 

В этой статье я делился с вами своим опытом создания подработки, используя свои навыки работы с данными, начиная с написания блогов по науке о данных, затем публикации электронных книг по науке о данных для создания канала на YouTube, затем создания онлайн-курсов по науке о данных и, наконец, наставничества и консультаций. . Конечно, есть и другие методы, такие как создание продуктов по науке о данных, фриланс и конкурсы по науке о данных. Тем не менее, я попытался поделиться своим собственным опытом, чтобы я мог предоставить информацию, основанную на моем практическом опыте. 
 
Юссеф Рафаат — исследователь компьютерного зрения и специалист по данным. Его исследования сосредоточены на разработке алгоритмов компьютерного зрения в реальном времени для приложений здравоохранения. Он также более 3 лет работал специалистом по данным в области маркетинга, финансов и здравоохранения.

Оригинальный источник статьи:   https://www.kdnuggets.com/

#datascience #skills #stream 

Используйте навыки работы с данными, чтобы создать 5 источников дохода
津田  淳

津田 淳

1678858803

如何使用您的数据科学技能创造 5 个收入来源

利用您的数据科学技能创造五种不同的收入来源。

近年来,数据科学已成为一项抢手的技能,其应用不仅限于企业部门。它为个人开辟了新的途径,可以利用他们的技能创造多种收入来源。

在本文中,我将介绍您如何利用您的数据科学技能来创造五种不同的收入来源。从咨询到编写和销售在线课程,我们将探索利用数据科学赚取额外收入的各种方式。本文将为那些希望扩大收入组合并充分利用数据科学技能的人提供有价值的见解。

使用您的数据科学技能创造 5 个收入来源

凯蒂·哈普 (Katie Harp)Unsplash上拍摄的照片

1. 数据科学写作

您可以使用数据科学技能产生收入的第一个收入来源是数据科学写作。写作是技术社区中一项被忽视的技能,它可能非常有价值,可以帮助您创造副业收入和被动收入。Medium是开始写博客的一个很好的选择,这样可以提高您的技能并开始建立受众。 

这将帮助您从Medium 合作伙伴计划中获得收入,如果您每月的浏览量达到 10 万美元,则每月收入约为 1000 美元。如果您专注于此,则可以在不到一年的时间内实现。

除此之外,您将开始从其他网站和在线博客获得为他们写作的机会。这将非常有利可图,因为您可以为一篇文章收取 100 美元甚至更多的费用。您可以查看此数据科学博客列表,这些博客可以为您的文章付费。 

您可以使用您的数据科学技能撰写很多主题:

  • 数据科学实用指南和教程 
  • 数据科学项目
  • 数据科学技能学习计划 
  • 数据科学职业技巧 

我真正喜欢写作的地方在于,它不仅可以帮助你获得丰厚的收入,还可以帮助你建立良好的个人品牌并展示你的数据科学技能。除此之外,它还可以随时随地按照您自己的节奏进行,并且可以创造很多机会,正如您将在接下来的部分中看到的那样。

另一个重要方面是开始您自己的时事通讯。即使它是免费的,这也将非常有用。之后您可以使用电子邮件列表来宣传您的产品,例如课程和电子书。开始新闻通讯的好地方是substack。 

2. 销售数据科学电子书

使用数据科学技能可以产生的第二个收入来源是销售数据科学电子书。在写了一段时间数据科学博客之后,您就可以开始这种收入来源了。这样做的主要原因是博客将打破您与技术写作之间的僵局,并提高您的写作技巧。 

除此之外,您还会知道人们真正热衷于阅读哪些主题,哪些不是。因此,现在您掌握了技能、受众和对市场的了解,因此您可以使用它们来编写人们真正喜欢阅读的电子书。 

您可以开始在Gumroad等在线平台上销售您的电子书。如果你做得很好,你可以在亚马逊上出售你的书,然后将其作为硬拷贝出售。要为您的图书做广告,您可以使用上一节中提到的时事通讯。除此之外,我真的建议您建立自己的网站并在上面销售您的产品。

我更喜欢写电子书的方法是先将其作为系列文章写在您自己的博客或 Medium 上,然后将其转换为电子书。通过这种方式,您将避免一次写完一本完整的书而没有得到任何反馈或基于文章的统计数据和人们与它的互动的书的成功迹象的痛苦。 

3. 数据科学 Youtube 频道

您可以产生的第三种收入来源是建立数据科学 YouTube 频道。在通过在线发布内容和每周撰写博客建立良好的声誉和在线个人品牌之后,您可以迈出这一步。 

发布书面博客不仅可以帮助您建立良好的品牌,因此当您发布视频时,您已经拥有了广泛的受众。此外,您可以根据之前撰写的文章构建大部分视频,并将它们用作视频的脚本。因此,您不会花太多时间为视频准备脚本和代码。此技巧将为您节省大量时间,并帮助您制作更多视频。

我也相信录制youtube视频对于接下来的收入来源会有很大的帮助。您将打破您和相机之间的僵局,对录制长视频更有信心,还将获得编辑视频以及如何创建交互式视频的实践技能。除此之外,您的听众将与您建立良好的沟通,并且会更有信心购买您的课程,因为他们之前看过您的解释。 

4. 销售数据科学课程

使用数据科学技能可以产生的第四种收入来源是创建和销售数据科学课程。由于制作高质量的课程是非常昂贵的时间和资源,我真的建议你等到你有大量的观众才能销售你的课程。

一个重要的提示是尝试制作更专业且与您正在建立的个人品牌一致的课程。因此,例如尽量避免参加真正有竞争力的课程,例如机器学习基础知识、面向数据科学家的 Python 等。相反,专注于与您之前关注的主题相关的更专业的主题。例如,我已经写了 10 多篇关于如何优化 Python 代码和编写更高效的 Python 代码的文章。我的文章得到了很好的反馈,我建立了一个强大的品牌,我可以就如何编写优化的 python 代码提供很好的提示。因此,一个非常合理的步骤是在将更多细节添加到短期课程后将其转换。 

最后一个提示是尝试为您创建的每门课程提供电子书。因为您将组织好内容,所以您只会花时间创建视觉内容。

以下是您可以用来销售课程和通过课程获利的平台列表:

5. 数据科学指导

您可以用来通过数据科学技能获利的最后一种方法是通过指导和咨询。一旦您建立了强大的个人品牌并且拥有大量受众,您就可以提供有偿长期指导和一次性课程。 

您可以提供项目审查、简历和作品集反馈、模拟面试和学习计划会议。除了长期指导之外,您还可以让您的受训者在其职业生涯中从某个 A 点到 B 点。 

我个人使用两个主要的指导平台:CalendlyMentorcruise。我使用 Calendly 进行一次性指导课程,因为它让我在时间段和付款选项方面具有高度的灵活性。我使用 Mentorcrusie 进行长期指导课程,因为该平台将处理我和受训者之间的所有事情,并确保我们双方都能从指导过程中获得最大收益。 

在整篇文章中,我与您分享了我使用数据科学技能建立副业的经验,首先是撰写数据科学博客,然后是发布数据科学电子书以建立 youtube 频道,然后是创建数据科学在线课程,最后是指导和咨询. 当然还有其他方法,比如构建数据科学产品、自由职业和数据科学竞赛。但是,我试图分享我自己的经验,以便我可以根据我的实践经验提供信息。 
 
Youssef Rafaat是一名计算机视觉研究员和数据科学家。他的研究重点是开发用于医疗保健应用的实时计算机视觉算法。他还在市场营销、金融和医疗保健领域担任了 3 年多的数据科学家。

文章原文出处:https:   //www.kdnuggets.com/

#datascience #skills #stream 

如何使用您的数据科学技能创造 5 个收入来源

How to Use your Data Science Skills to Create 5 Streams of Income

Leverage your data science skills to create five different side streams of income.

Data Science has become an in-demand skill in recent years and its applications are not just limited to the corporate sector. It has opened up new avenues for individuals to create multiple streams of income using their skills.

In this article, I walk through how you leverage your data science skills to create five different side streams of income. From consulting to writing and selling online courses, we will explore the various ways in which data science can be used to earn extra cash. This article will provide valuable insights for those looking to expand their income portfolio and make the most of their data science skills.

Use your Data Science Skills to Create 5 Streams of Income

Photo by Katie Harp on Unsplash

1. Data Science Writing

The first stream of income you can use your data science skills to generate revenue is data science writing. Writing is an overlooked skill in the tech community that can be really valuable and help you create both side and passive income. A very good option to start blogging on is Medium so as to improve your skills and start building an audience. 

This will help you generate income from the Medium partner program which can be around 1000 $ per month if you manage to reach 100 k views per month. This can be achieved in less than a year if you focused on it.

In addition to that you will start getting offers from other websites and online blogs to write for them. This will be really profitable as you can charge 100 $ and more for one article. You can check this list of data science blogs that can pay you for your articles. 

There are a lot of topics you can write on using your data science skills:

  • Data science practical guide & tutorials 
  • Data Science projects
  • Data science skills study plans 
  • Data science career tips 

What I really like about writing is that it will not only help you generate good income, but it will also help you build a good personal brand and show up your data science skills. In addition to this, it can also be done anywhere, and at any time at your own pace and it can create a lot of opportunities after that as you will see in the coming sections.

Another important aspect of this is to start your own newsletter. This will be really helpful even if it is free. You can use the email list after that for advertising your product such as courses and ebooks. A good place to start a newsletter is on substack

2. Selling Data Science e-Books

The second stream of income you can generate using your data science skills is selling data science e-books. You can start this stream of income after data science blogging for a while. The main reason for this is that blogging will break the ice between you and technical writing and will sharpen your writing skills. 

In addition to that, You will know what topics people are really keen on reading and what not. So now you have the skills, audience, and understanding of the market so you can use them to write e-books that really people would like to read. 

You can start selling your ebook on online platforms such as Gumroad. If you are doing really well you can sell your book on amazon after that to sell it as a hard copy. To advertise your book you can use the newsletter as mentioned in the previous section. In addition to that, I really recommend building your own website and selling your products on it.

The approach I prefer in writing an ebook is to first write it as a series of articles on your own blog or on Medium and then convert it to an ebook. By this, you will avoid the pain of writing a complete book in one shot without getting any feedback or an indication of the book's success based on the article's stats and the people's interaction with it. 

3. Data Science Youtube Channel

The third stream of income you can generate is by building a data science youtube channel. You can take this step after building a strong reputation and online personal brand by publishing content online and by writing blogs on a weekly basis. 

Having published written blogs will not only help you to build a good brand so when you publish videos you would already have a wide audience. In addition, you can build most of your videos on the articles you wrote before and use them as scripts for your videos. So you will not spend much time preparing the scripts and the codes for your videos. This tip will save you a lot of time and will help you produce more videos.

I also believe that recording youtube videos will be of great help for the next source of income. You will break the ice between you and the camera and become more confident in recording long videos also will gain hands-on skills in editing videos and also how to create interactive videos. In addition to that, your audience will build good communication with you and will have more confidence in buying your courses as they have seen your explanation before. 

4. Selling Data Science Courses

The fourth stream of income you can generate using your data science skills is by creating and selling data science courses. Since producing high-quality courses is a very expensive time and resources wise I really advise you to wait until you have a large audience to be able to sell your courses.

An important tip is to try to produce courses that are more specialized and consistent with the personal brand you are building. So for example try to avoid courses that are really competitive such as machine learning basics, python for data scientists, and so on. Instead, focus on more specialized topics that are related to the topics you are focusing on before. So for example I have written more than 10 articles about how to optimize your python code and write more efficient python code. My articles got very good feedback and I built a strong brand that I can give very good tips on how to write optimized python code. So a very reasonable step is to convert this after adding more details to a short course. 

A final tip is to try to have ebooks for every course you create. As you will have the content organized and you will only invest time in creating the visual content.

Here is a list of platforms that you can use to sell and monetize your courses:

5. Data Science Mentoring

The final method you can use to monetize your data science skills is through mentoring and consulting. Once you have built a strong personal brand and you have a large audience you can offer paid long-term mentoring and one-time sessions. 

You can offer project reviews, CV & portfolio feedback, mock interview, and study plan sessions. In addition to long-term mentoring in which you get your mentee from a certain point A to point B in his career. 

I personally use two main platforms for mentoring: Calendly and Mentorcruise. I use Calendly for the one-time mentoring sessions as it gives me high flexibility regarding time slots and payment options. I use Mentorcrusie for long-term mentoring sessions since the platform will handle everything between me and the mentee and ensure that we both will get the best out of the mentoring process. 

Throughout this article, I shared with you my experince of building a side hustle using my data science skills starting by writing data science blogs then publishing data science e-books to build a youtube channel then creating data science online courses, and finally mentoring and consultation. Ofcourse there are other methods such as building data science products, freelancing, and data science competitions. However, I tried to share my own experince so I can provide information based on my practical experince. 
 
Youssef Rafaat is a computer vision researcher & data scientist. His research focuses on developing real-time computer vision algorithms for healthcare applications. He also worked as a data scientist for more than 3 years in the marketing, finance, and healthcare domain.

Original article source at:  https://www.kdnuggets.com/

#datascience #skills #stream 

How to Use your Data Science Skills to Create 5 Streams of Income
Nat  Grady

Nat Grady

1676278321

Best 21 Effective Team Management Skills

The number of teams or departments can be very high in large corporations. Except for small firms with only a handful of people, all other organisations have different teams working on different tasks. It is better to work in separate teams than everyone working under the same manager. Teams help get tasks completed more easily and efficiently. But every team must also have a leader capable of managing them and completing work. A set of team management skills help these managers keep the members together and achieve the team’s goals

You will learn a lot about team management and the skills needed for it in the Executive Development Programme In General Management. All the details about this course are available on our website. 

What Is Team Management?

Before looking at team management skills, we must first understand the task and why it is very important. Team management is a set of activities and strategies executed by the team’s leader to get work done by a group of people and achieve a common goal. Teams are important in a company because it helps foster good relationships and communication between employees. When working in a team, people learn from each other and improve themselves in many respects. Team leaders motivate the members to put in their best efforts.

As the members come from different backgrounds, there can be a lack of communication between them. Team management is required to take care of this and ensure that everyone understands their jobs and how they must cooperate with others. Another task of managers is ensuring that people work together without conflicts. When there are a group of employees, there is bound to be a difference of opinion, and the leaders must use their team management skills to resolve them. Good leadership helps to improve the productivity of the team. 

Importance Of Team Management

Importance Of Team Management

Keeps Employees Happy

Happy employees are essential for every organisation as they contribute better to the company’s overall growth. Employees must feel good about what they do because it positively affects the firm’s success. Employee retention levels will also increase when the team members feel good about working for the company. It is very important as recruitment is expensive and time-consuming. Establishments that have happy workers give better service to their customers. It will help get more loyal customers and consequently more business. Learning team management skills helps managers keep workers happy. 

Improves Productivity

Good team management helps to improve the productivity of employees. It is essential if the company must achieve its business goals and move towards better growth. Good managers create an environment that helps workers focus on the common goal instead of worrying about external problems. One of the team management skills that leaders must possess to improve productivity is maintaining personal relationships with every team member. They must also show appreciation and excitement at the team’s progress. Leaders must also openly discuss the company’s higher goals with the employees to improve interest in their job. 

Reduces Employee Turnover

Another important function of team management is to retain people. Hiring is an expensive process, and companies want to reduce this as much as possible. An important reason people leave an organisation is the poor relationship between the team and its leaders. Good team management skills will certainly help improve this relationship and keep the employees happy in their jobs. Good relationships will also help employees speak openly about their problems and seek solutions. When people trust their leaders, they will likely stay in the company for longer. 

Enrolling with the Executive Development Programme In General Management helps you learn the importance of team management. You can also learn all the skills needed for the job in this course. Please visit our website to know more details about this programme. 

Skills Needed For Team Management

Skills Needed For Team Management

  • Getting The Best Out Of Members

As a team leader, it is not just the work you are responsible for. You must ensure that the whole team performs to their best capabilities. For this, it is necessary to ensure that every member uses their full potential and contributes to the team’s success. For this, you must sit and listen to their ideas. It will help you evaluate the abilities of each employee in the team. The team leader also has to make individual development plans for them. Bringing out the best in workers is one of the important team management skills.

  • Giving Feedback

Not everyone knows what they are good at. Team leaders must assess each team member’s performance and give them constructive feedback. Giving positive feedback will motivate the person to do better. But team managers must also give negative feedback when someone performs below the desired level. One of the team management skills you must learn is to convey negative feedback without hurting the person. It is best to say what went wrong instead of telling them they did something wrong. 

  • Delegating Effectively

One of the jobs of the team leader is to get work done by the employees. Delegation is good for the leader as well as the employees. The employees learn new tasks, and managers expand their capabilities through the team. Another important benefit of delegating work is that employees feel that you trust them with crucial jobs. The effective way to delegate work is to make them understand the value of the task and how it will impact the company’s growth.

  • Interacting With Different People

Team members can avoid others who they may not like. But a team manager must interact with everyone in the team even if some people rub them the wrong way. One of the ways to do this successfully is to avoid discussing the differences and stress the common aspects. You must also listen to them and understand their feelings. It is one of the important team management skills that will help you get work done by the staff members.

  • Understanding Different Workstyles

Not everyone works in the same manner. Even the time of the days when people are most productive differs from person to person. It means that the team leader must know every member’s work style and preferences. They must assign work that will make the employee excited. Observing the workers keenly is one way to understand their workstyles and preferences. It helps get the best out of everyone. 

  • Resolve Problems Proactively

There can be problems in every work. It is all the more true when a team works towards the same goal. Everyone may think it is the other person’s responsibility to discuss the problem and find a solution. Detecting these problems before they assume huge proportions is one of the team management skills that every leader must possess. Talking individually to team members can help discover problems early. 

  • Conflict Resolution

When people from different backgrounds work together, conflicts are possible. Unless these are resolved, the team will not achieve the goal it should. It is not good avoiding the issue. Team managers must admit the problem and do their best to resolve it. The best way is to allow all members to voice their opinions and find a middle ground that is acceptable to all. You must ensure that everyone is agreeable to the solution. 

Also  Read: Different Types of Change Management: A Complete Guide

  • Serving Before Leading

Being a servant before showing yourself as a leader gets better employee engagement. Your team members start respecting and trusting you. One way to do this is to be humble and give credit to the team for any good work. You must also be transparent and tell the employees your plans so that nothing comes as a surprise. Offer career development plans to the subordinates to enable their growth in the organisation. 

  • Unite The Members

One of the most critical team management skills is to keep the team united. If everyone interacts well with others, your work as a leader is very easy. Moreover, work will also get done as you want. One of the tricks to do this is to hold team-building activities regularly. Pairing new employees with experienced ones will quickly make them feel at home. You can also conduct brainstorming sessions, so everyone understands the others’ communication styles. 

  • Being Approachable

If you want your team to talk to you freely about work problems or even their issues, then you must be approachable to them. If you develop this quality, it is easy for you to get information from the team. One of the ways is to get out of your office and greet the employees at their workstations. Be an active listener to any problem that your team members bring to you, however small it may be. This quality will also help you know about issues before they become unmanageable. 

  • Represent The Team

It is not enough to lead the team. You must develop the capability of talking to others about your team. When employees want something to be conveyed to the top management, you must become their spokesperson. You must also regularly talk about the team’s good work to your bosses. When someone expresses a good idea, make sure to share it in the company’s internal network. This is one of the team management skills that will earn you the great trust of the team. You must also actively advocate for promotions and salary hikes for your team members. 

  • Take Inputs

Another skill that every team manager must acquire is the ability to accept input from the team. It doesn’t need to be the leader who gives out instructions and suggestions always. There are many occasions when employees come out with an excellent idea. Take this input and try it honestly. If it works, give due credit to the person who came up with the solution. You don’t need to wait for them to come up with ideas. You can actively seek their opinions on various matters. 

  • Deal With Unpleasant Comments

Your team may love and respect you a lot, but it is possible that, in certain circumstances, someone will make an adverse comment about you. One of the team management skills that you must certainly acquire is the patience to deal with such talk. You must not take it emotionally and see the reason behind such comments. Address the root cause instead of taking the comment personally. 

  • Prevent Burnouts

It always happens that some people in the team have too much work leading to burnout. It is not good to have exhausted employees before the task is completed. Regularly check the workload that every employee has and ensure that the tasks are distributed evenly among the members. If there are less skilled people to handle certain tasks, make sure to train others and remove some burden from those handling the job. 

  • Establish The Norms

Even when you are friendly and open with the team, you must also be firm in establishing and implementing team norms. The team must know the spoken and unspoken regulations that guide them. Your team must have a norm that regulates workplace interactions, and these must be established early on so that everyone doesn’t follow different rules. While developing your team management skills, make sure to learn the ability to enforce norms in the group.

  • Motivate The Team

There are two ways to motivate your team. One is by way of recognition and rewards, and the other by making them feel satisfied in their work. Instilling a sense of satisfaction in your workers is difficult but pays more than rewards. If you can make them feel happy in completing their jobs successfully, they will find the problems for various solutions. They will also come up with ideas to finish work more efficiently and quickly. 

  • Recognise And Reward

Everyone wants their work to be recognised. They also expect to get rewards for good work. As a team manager, you must ensure that you recognise and appreciate the work done by your team members. It is quite important to make sure that everyone, including your team members and the top management, knows about your employees’ achievements. This is one of the important team management skills that will help you get the best out of your staff members. 

  • Emotional Intelligence

As a team manager, you deal with people with different personal and professional problems. You must help them get over it with a lot of empathy. Emotional intelligence is one of the pivotal team management skills that help you deal with situations with dignity and grace. This skill is defined as the ability to correctly understand expressions of feelings and respond to them in the right way. This skill helps you connect with employees and earn their trust very quickly. 

  • Organising Skills

Remaining organised is crucial for all team managers. There will be so many activities going on in your department that it is easy to forget something. When you are organised well, you can check with your team members to make sure that all the tasks are completed without any delay. Being organised also helps you present any report to the top management whenever asked for. When you are organised, you can think clearly and find solutions to any problem. This gives confidence to your team members. 

  • Decision Making

It is one of the obvious team management skills that every manager must possess. There are various occasions when you need to make quick decisions. If you can make those decisions, you can get the task completed without any delay. The ability to make decisions correctly also earns the respect of your subordinates. You can also help them make decisions when there are tough situations. When you help them in such circumstances, they will put in their best efforts to achieve the team’s goals. 

  • Technical Proficiency

Whether you need technical knowledge in your job or not, it is best to be familiar with all modern technology. Various tools are available for completing your job and keeping track of others’ tasks. Such tools help you save a lot of time and give you the space to think of innovative solutions. Tracking the tasks of your staff members also ensures that no job is left unattended. It will also help you present the status of your project at any time to your bosses. 

All these skills are taught in the Executive Development Programme In General Management offered by prestigious institutions. You can learn about such courses on our website. 

Conclusion

Being able to manage a team well and getting your work completed successfully not only gives you satisfaction but also elevates you in front of the top management. It is one way of making sure that you progress quickly in your career and achieve your professional goals. But team management is not an easy task. This has been made tougher with the introduction of remote members to the team. But with the right skills and the correct tools, you can do the job well. Attending a good course is one way to ensure that you are successful as a manager. 

Original article source at: https://www.edureka.co/

#management #skills #effective 

Best 21 Effective Team Management Skills
Gordon  Taylor

Gordon Taylor

1675944253

How to Improve Your Coding Skills with Temporal Values in MySQL

How to Improve Your Coding Skills with Temporal Values in MySQL

This overview of date and time values in MySQL will help you take advantage of temporal values in your database tables.

Both new and experienced users of the popular MySQL database system can often get confused about how temporal values are handled by the database. Sometimes users don't bother learning much about temporal value data types. This may be because they think there isn't much to know about them. A date is a date, right? Well, not always. Taking a few minutes to learn how MySQL stores and displays dates and times is beneficial. Learning how to best take advantage of the temporal values in your database tables can help make you a better coder.

MySQL temporal data types

When you are building your tables in MySQL, you choose the proper data type which most efficiently holds the data you intend to insert into the table (INT, FLOAT, CHAR,and so on). MySQL provides you with five data types for temporal values. They are: DATE, TIME, DATETIME, TIMESTAMP, and YEAR.

MySQL uses the ISO 8601 format to store the values in the following formats:

  • DATE  YYYY-MM-DD
  • TIME   HH:MM:SS
  • TIMESTAMP YYYY-MM-DD  HH:MM:SS
  • YEAR YYYY

Datetime compared to Timestamp

You may have noticed that the DATETIME and TIMESTAMP data types hold the same data. You might wonder if there are any differences between the two. There are differences.

First, the range of dates that can be used differ. DATETIME can hold dates between 1000-01-01 00:00:00 and 9999-12-31 23:59:59, whereas TIMESTAMP has a much more limited range of 1970-01-01 00:00:01 to 2038-01-19 03:14:07 UTC.

Second, while both data types allow you to auto_initialize or auto_update their respective values (with DEFAULT CURRENT_TIMESTAMP and ON UPDATE CURRENT_TIMESTAMP respectively), doing so was not available for DATETIME values until version 5.6.5. You can use one of the MySQL synonyms for CURRENT_TIMESTAMP if you choose, such as NOW() or LOCALTIME().

[ Download now: MariaDB and MySQL cheat sheet ]

If you use ON UPDATE CURENT_TIMESTAMP (or one of its synonyms) for a DATETIME value, but do not use the DEFAULT CURRENT_TIMESTAMP clause, then the column will default to NULL. This happens unless you include NOT NULL in the table definition, in which case it defaults to zero.

Another important thing to keep in mind is that although normally neither a DATETIME nor a TIMESTAMP column have a default value unless you declare one, there is one exception to this rule. The first TIMESTAMP column in your table is implicitly created with both DEFAULT CURRENT_TIMESTAMP and ON UPDATE CURRENT_TIMESTAMP clauses if neither is specified and if the variable explicit_defaults_for_timestamp is disabled.

To check this variable's status, run:

mysql> show variables like 'explicit_default%';

If you want to turn it on or off, run this code, using 0 for off and 1 for on:

mysql> set explicit_defaults_for_timestamp = 0;

Time

MySQL's TIME data type may seem simple enough, but there are a few things that a good programmer should keep in mind.

First, be aware that although time is often thought of as the time of day, it is in fact elapsed time. In other words, it can be a negative value or can be greater than 23:59:59. A TIME value in MySQL can be in the range of -838:59:59 to 838:59:59.

Also, if you abbreviate a time value, MySQL interprets it differently depending on whether you use a colon. For example, the value 10:34 is seen by MySQL as 10:34:00. That is, 34 minutes past ten o'clock. But if you leave out the colon, 1034', MySQL sees that as 00:10:34. That is, ten minutes and 34 seconds.

Finally, you should know that TIME values (as well as the time portion of DATETIME and TIMESTAMP columns) can, as of version 5.6.4, take a fractional unit. To use it, add an integer (max value six) in parentheses at the end of the data type definition.

time_column TIME(2)

Time zones

Time zone changes not only cause confusion and fatigue in the real world, but have also been known to cause problems in database systems. The earth is divided into 24 separate time zones which usually change with every 15 degrees of longitude. I say usually because some nations choose to do things differently. China, for example, operates under a single time zone instead of the five that would be expected.

The question is, how do you handle users of a database system who are in different time zones. Fortunately, MySQL doesn't make this too difficult.

To check your session time zone, run:

mysql> select @@session.time_zone;

If it says System, that means that it is using the timezone set in your my.cnf configuration file. If you are running your MsSQL server on your local computer, this is probably what you'll get, and you don't need to make any changes.

If you would like to change your session's time zone, run a command such as:

mysql> set time_zone = '-05:00';

This sets your time zone to five hours behind UTC. (US/Eastern).

Getting the day of the week

To follow along with the code in the rest of this tutorial, you should create a table with date values on your system. For example:

mysql> create table test
( row_id smallint not null auto_increment primary key,
the_date date not null);

Then insert some random dates into the table using the ISO 8601 format, such as:

mysql> insert into test (the_date) VALUES ('2022-01-05');

I put four rows of date values in my test table, but put as few or as many as you'd like.

Sometimes you may wish to know what day of the week a particular day happened to be. MySQL gives you a few options.

The first, and perhaps most obvious way, is to use the DAYNAME() function. Using the example table, DAYNAME() tells you the day of the week for each of the dates:

mysql> SELECT the_date, DAYNAME(the_date) FROM test ;
+------------+-------------------------------+
| the_date   | DAYNAME(the_date)             |
+------------+-------------------------------+
| 2021-11-02 | Tuesday                       |
| 2022-01-05 | Wednesday                     |
| 2022-05-03 | Tuesday                       |
| 2023-01-13 | Friday                        |
+------------+-------------------------------+
4 rows in set (0.00 sec)

The other two methods for getting the day of the week return integer values instead of the name of the day. They are WEEKDAY() and DAYOFWEEK(). They both return numbers, but they do not return the same number. The WEEKDAY() function returns a number from 0 to 6, with 0 being Monday and 6 being Sunday. On the other hand, DAYOFWEEK() returns a number from 1 to 7, with 1 being Sunday and 7 being Saturday.

mysql> SELECT the_date, DAYNAME(the_date),
WEEKDAY(the_date), DAYOFWEEK(the_date) FROM test;
+------------+------------------+------------------+--------------------+
| the_date   | DAYNAME(the_date)| WEEKDAY(the_date)| DAYOFWEEK(the_date)|
| 2021-11-02 | Tuesday          | 1                | 3                  |
| 2022-01-05 | Wednesday        | 2                | 4                  |
| 2022-05-03 | Tuesday          | 1                | 3                  |
| 2023-01-13 | Friday           | 4                | 6                  |
+------------+------------------+------------------+--------------------+
4 rows in set (0.00 sec)

When you only want part of the date

Sometimes you may have a date stored in your MySQL table, but you only wish to access a portion of the date. This is no problem.

There are several conveniently-named functions in MySQL that allow for easy access to a particular portion of a date object. To show just a few examples:

mysql> SELECT the_date, YEAR(the_date), MONTHNAME(the_date), 
DAYOFMONTH(the_date) FROM test ;
+-----------+---------------+-------------------+---------------------+
| the_date  | YEAR(the_date)|MONTHNAME(the_date)| DAYOFMONTH(the_date)|
+-----------+---------------+-------------------+---------------------+
| 2021-11-02| 2021          | November          | 2                   |
| 2022-01-05| 2022          | January           | 5                   |
| 2022-05-03| 2022          | May               | 3                   |
| 2023-01-13| 2023          | January           | 13                  |
+-----------+---------------+-------------------+---------------------+
4 rows in set (0.00 sec)

MySQL also allows you to use the EXTRACT() function to access a portion of a date. The arguments you provide to the function are a unit specifier (be sure that it's singular), FROM, and the column name. So, to get just the year from our test table, you could write:

mysql> SELECT EXTRACT(YEAR FROM the_date) FROM test;
+----------------------------------------------+
| EXTRACT(YEAR FROM the_date)                  |
+----------------------------------------------+
| 2021                                         |
| 2022                                         |
| 2022                                         |
| 2023                                         |
+----------------------------------------------+
4 rows in set (0.01 sec)

Inserting and reading dates with different formats

As mentioned earlier, MySQL stores date and time values using the ISO 8601 format. But what if you want to store date and time values another way, such as MM-DD-YYYY for dates? Well, first off, don't try. MySQL stores dates and times in the 8601 format and that's the way it is. Don't try to change that. However, that doesn't mean you have to convert your data to that particular format before you enter it into your database, or that you cannot display the data in whatever format you desire.

If you would like to enter a date into your table that is formatted in a non-ISO way, you can use STR_TO_DATE(). The first argument is the string value of the date you want to store in your database. The second argument is the formatting string which lets MySQL know how the date is organized. Let's look at a quick example, and then I'll delve a little deeper into what that odd-looking formatting string is all about.

mysql> insert into test (the_date) values (str_to_date('January 13, 2023','%M %d, %Y'));

Query OK, 1 row affected (0.00 sec)

You put the formatting string in quotes, and precede each of the special characters with a percent sign. The format sequence in the above code tells MySQL that my date consists of a full month name (%M), followed by a two-digit day (%d), then a comma, and finally a four-digit year (%Y). Note that capitalization matters.

Some of the other commonly used formatting string characters are:

  • %b abbreviated month name (example: Jan)
  • %c numeric month (example: 1)
  • %W name of day (example: Saturday)
  • %a abbreviated name of day (example: Sat)
  • %T 24-hour time (example: 22:01:22)
  • %r 12-hour time with AM/PM (example: 10:01:22 PM)
  • %y 2-digit year (example: 23)

Note that for the 2-digit year (%y) the range of years is 1970 to 2069. So numbers from 70 through 99 are assumed 20th century, while numbers from 00 to 69 are assumed to be 21st century.

If you have a date stored in your database, and you would like to display it using a different format, you can use the DATE_FORMAT() function:

mysql> SELECT DATE_FORMAT(the_date, '%W, %b. %d, %y') FROM test;
+-----------------------------------------+
| DATE_FORMAT(the_date, '%W, %b. %d, %y') |
+-----------------------------------------+
| Tuesday, Nov. 02, 21                    |
| Wednesday, Jan. 05, 22                  |
| Tuesday, May. 03, 22                    |
| Friday, Jan. 13, 23                     |
+-----------------------------------------+
4 rows in set (0.00 sec)

Conclusion

This tutorial should give you a helpful overview of date and time values in MySQL. I hope that this article has taught you something new that allows you to have both better control and a greater understanding into how your MySQL database handles temporal values.

Original article source at: https://opensource.com/

#mysql #coding #skills #values 

How to Improve Your Coding Skills with Temporal Values in MySQL
Monty  Boehm

Monty Boehm

1671861067

Best 7 Learning Habits for Developers: Reach Skill Goals in Less Time

As a developer, it’s important to always be learning. The industry is constantly changing, and if you don’t keep up, you’ll quickly fall behind. In this blog post, we will discuss seven learning habits that every developer should master. These habits will help you stay current in your field, and continue to grow as a professional!

The change in the software industry has been dramatic over recent years. New technologies are introduced daily to keep up with this evolution. Developers must be adaptable if they want their careers to progress through these changes successfully!

Developers are constantly learning to stay current in the industry. The 2020 Stack Overflow Developer Survey found that 75% of respondents learn a new technology at least every few months or once a year. Given how quickly innovations happen, developers have no choice but to keep up with changing technologies.

Creating Sustainable Learning Habits

To stay competitive in your career, you need to ask yourself some questions.

  • “Do the technologies our company uses change and advance?”
  • “Does my role help me keep up with technology evolution?”

The answer isn’t always a resounding yes.

Learning habits for developers

Not all companies have the capacity or appetite to stay at the forefront of technology. Many large corporations are focused on delivering business outcomes that mean maintaining current systems instead of making drastic changes.

You need to be responsible for your own learning to stay competitive in your career. 

There was a time when the longer you’d been in the industry, the less you needed to learn. But now it’s different! Tink you can sit back and relax after you’ve secured a developer role at a tech company? You’re in for a disappointment.

You need to learn to learn, and learn how to learn quickly.

To make sure that you are learning effectively, you need to do more than set goals. You need to create learning habits that are sustainable.

Humans are creatures of habit. Habits transform our lives because we become what we repeatedly do, day after day. If you want to achieve a goal, you can’t do it on a whim and expect to achieve it tomorrow.

This is true whether your goal is to become more mindful, receive a promotion, or make a million dollars.

Becoming an exceptional learner — who learns and applies what they learn in practice — takes consistent effort. You can only do that by creating good learning habits. I will share with you seven learning habits for developers to aid you in your career success.

Habit #1: Blocking Out Learning Time

The difference between successful people and those who are not can be found in how they approach their goals.

Successful people set aside time every day to work on the things that matter to them. The others try to set huge goals and hope for the best.

So the first and most important habit that you need to cultivate is to be disciplined about learning. You can achieve this by setting aside dedicated time to learn.

If you have a full-time job, this could happen after work hours. You might decide to set aside two hours after dinner, three nights per week. Or it could be a few hours every weekend.

To create a habit, you need to set the time aside first. Then you need to follow through and consistently spend that time learning. Whether reading a book, watching a tutorial, or writing code, you need to treat it like an appointment. You’ll form a habit of learning new skills at that time. And once you do that, you won’t have to think twice about it.

Having a designated time block also helps ensure that you are prioritizing learning. If you look at the Eisenhower matrix, learning time will fall into the important-but-not-urgent quadrant.

The Eisenhower matrix for prioritization and time management

Without dedicated time set aside, it’s easy for you to prioritize other activities that are more urgent. And often, those urgent activities don’t really matter or bring you closer to your goal.

Habit #2: Creating a High-level Plan

You know the saying: “if you fail to plan, you plan to fail.” This applies to learning, too.

Sometimes, developers get impatient and plunge straight into active learning without any preparation.

If you want to become a front-end developer, you don’t need to read every book on how to code with JavaScript, HTML, and CSS. You don’t need to watch all the JavaScript tutorials. And you don’t need to subscribe to every web developer’s website. If you do that, you will end up lost in information overload.

Instead, start with the basics. Read one book or article at a time. Or watch one video tutorial series at a time. And then slowly expand your resources as you need to.

When you have too many resources, it can be overwhelming and make it difficult for you to focus. It’s important to create a high-level plan of your goal, and then break it down into smaller milestones.

This will help you focus on one thing at a time, and prevent information overload. It will also make it easier for you to track your progress and see how far you’ve come!

Another example is when a developer wants to learn a JavaScript framework, like React. She starts reading tutorials about React without any plan on areas to focus on, or how to get to her goal — an ability to write React apps.

The better way for her to learn React would be to:

  • pick up a focused book or course,
  • look at the official documentation,
  • go through the step-by-step approach from main concepts to advanced guides and API references,
  • and create a sample application in React while looking at and learning from other examples out there.

This structured way of learning can be achieved with S.M.A.R.T goals for each stage of your learning. S.M.A.R.T. goals are good goals because they’re specific, measurable, achievable, realistic, and time-bound.

Building learning habits via a structured way of learning doesn’t mean subscribing to traditional classroom-style learning and attending classes regularly. Let me introduce you to a learning framework called the 70:20:10 model.

As developers, we know that you learn by actually doing the work. The 70:20:10 framework is based on the principle that 70% of your learning will be hands-on and on-the-job. 20% will be social learning through others who have already done it, via coaching or collaborative activities like peer programming. 10% will be through traditional way of learning.

Each has its own merit. But this model is a good reminder that you must incorporate working with and interacting with others into your learning plan. So, when you are creating a high-level plan, be sure to include all of them.

Here is how to put the 70:20:10 model into practice. Continuing from the previous example, you want to learn React. When creating a high-level plan, you will come up with a small project idea, create an end goal, define the steps required to achieve that end goal, and for each step, read and learn only what is necessary to complete that project.

Here, your end goal might be to create a web app that uses React for both backend and frontend. The first step might consist of creating a static page with links to your favorite websites. And once you achieve that, you can tackle the next step. This could be to connect to a third-party API and display the five most recent articles. This step will therefore include tasks like researching the API, reading about its data structure, implementing it in the app, and so on. Research, reading, and watching tutorials make up 10% and the rest of the hands-on activities will make up 70%.

When putting together a high-level plan, make sure to include S.M.A.R.T. milestones. S.M.A.R.T stands for:

  • Specific: This ensures your milestones are well thought out, and not vague or general. Instead of a generic goal like become a better programmer, set a specific milestone. For instance, understanding the basic concepts of data structures and algorithms. This will lead to you achieving your goal of becoming a better programmer.
  • Measurable: This quantifies your milestones so you know where you are and whether you have reached them. Instead of saying learn React, a measurable milestone might say say: Create an interface in React that reads JSON response from a third-party API, displays results, and refreshes them every 30 seconds.
  • Attainable: Having ambitious goals are good. But if they’re not realistic, then there is no point to them. If you have no experience with machine learning algorithms, you can’t expect to write a system that offers a personalized news feed, based on a user’s search history, in a few days. By breaking down an ambitious goal into actionable tasks with milestones, you have a higher chance of achieving them.
  • Relevant: This ensures your milestones are relevant to your overall goal. Just like the saying, “Never lose sight of your vision,” a milestone that is not aligned with the goal is a random activity — or busywork.
  • Timely: This one is pretty straightforward. In Agile software development, there’s a concept called timeboxing, which is allocating a maximum unit of time for an activity. Having a time constraint for each milestone means you have a deadline for when you should complete the activities you set out to reach.

Without S.M.A.R.T. milestones, you won’t be able to measure how you’re doing and your high-level plan will be less practical.

Habit #3: Reflecting On What You’ve Learned

Having a clear high-level plan with milestones is good. But it will serve little purpose if you’re not tracking your progress.

With this habit, you’ll commit to reviewing your progress every fortnight or at least every month. You’ll compare it against your timeline and ask yourself whether you are heading in the right direction.

Set up a calendar reminder to do this at the start of your learning goal so you don’t forget.

Check against your high-level plan and think about what you’ve learned each month. If you’re not achieving your milestones on time, reflect on what you’ve learned to help you understand where you’re struggling. Then you can revise your action accordingly. Think of it like A/B testing for your learning approach.

On the other hand, if you’re achieving your milestones, reflection serves as a great tool to think of creative ideas. For example, thinking about how you used the API in your latest web app may spark a new idea using the same API. 

Habit #4: Tinkering & Having Fun

One reason people find it hard to make good habits stick is because doing the work consistently isn’t always enjoyable. It requires discipline.

For example, it’s easy to cultivate a habit of eating dessert after your meal, because it’s pleasurable. It’s much harder to build a healthy eating habit. That’s simply because it’s not as fun as eating what you want, when you want it.

We are humans and humans, by nature, like to do things that are fun and enjoyable. We seek pleasure and avoid pain. So to make sure your learning habits stick, you need to inject some fun into the process. 

What does fun look like? From my experience as a developer, there is nothing more satisfying than seeing my code run successfully. It makes you feel good. The feeling of accomplishment is one of the best feelings because it’s so rooted in ego.

For a new backend developer, it could be seeing how data is successfully saved into a data store. For a frontend developer, it could be seeing their new app working in a browser for the first time.

When you know what brings you joy and satisfaction, include those things in your high-level learning plan. When learning becomes fun, it’ll be a habit that you will likely keep for a long time. 

Habit #5: Taking Notes Like a Pro

Whether you’re learning on the job, from others, or at formal learning events, you should take notes.

Note-taking feels natural to students in secondary schools or universities. But many knowledge workers lose the habit as they enter the workforce.

There’s a lot of research on why note-taking is beneficial to learning.

  • It helps with information retention as well as recall.
  • It helps with understanding what you’re learning as your brain processes information. Note-taking encourages you to clarify the main idea and key points as you’re writing things down.
  • Lastly (and probably most importantly), it focuses your attention on what you’re learning.

Today, there are so many distractions that are fighting for our attention, from seeing a social app’s red badge to the rabbit hole of information at our fingertips. Just by typing a few keystrokes, note-taking forces you to stay focused on your learning topic.

“It doesn’t matter how you record your notes, as long as you do.” – Bill Gates.

While taking notes is better than not taking them, I beg to differ with Bill Gates. You can take good notes and you can take bad ones. If you’re going to take notes, you may as well do it well.

Here are some note-taking strategies for developers:

  • Pick an appropriate system, like the Cornell system, Mind map system, or Classification system.
  • The Cornell system is great for taking notes while reading a book, listening to a podcast, or watching a tutorial.
  • The Mind map system is appropriate for deep research on a topic and how various information comes together. Check out these examples on mind map note-taking.
  • The Outline system is great for classifying information based on importance using headings, sub-headings, and lists. It’s the most common form of note-taking method and is often used by students.

Habit #6: Learning in Public

#buildinpublic is a trendy concept amongst makers and entrepreneurs. Some may even call it a movement.

It’s where creators share progress on what they are making via public platforms like Twitter and YouTube. They share their successes — and their trials and errors.

It’s definitely the opposite of sharing your achievements only after you’ve successfully created something. 

Just like #buildinpublic, learning in public means sharing your progress on a public platform. It’s a great habit. By sharing early and often, others will be able to provide feedback on your progress, share insights from their own learning experiences, and last but not least, help you build momentum on your learning journey.

What’s more, you will reach like-minded individuals in the industry. They might be able to connect you with potential employers and projects. They know what kind of skills you have from what you share in public.

Check out the #learninpublic hashtag on Twitter. You’ll see many tweets from developers sharing their learning and enjoying an open dialogue. 

Habit #7: Celebrating Small Wins

The habit of celebrating small wins may seem self-indulgent but it’s actually one that will bring all the other habits together and create an impact on your career as a developer.

How does celebration relate to impact creation, you might be wondering. It’s because when you celebrate your achievements, however small they may be, it helps keep your momentum and motivation going.

For example, if you’re building an iPhone app in React Native, you don’t have to wait until your app is finished and is available in the App Store to feel accomplished. You can celebrate every time you’ve reached a milestone that you’ve set in your high-level plan.

The first milestone might be the point where you can run your React Native app on iOS Simulator. The second celebration might be when you’ve finished creating a splash screen for your app. All these small wins are critical to helping you build the momentum you need to achieve your goal of being able to create iPhone apps using React Native. 

In James Clear’s best-selling book, Atomic Habits, the author described the process of building a lasting habit via four simple steps:

  • Cue. A cue is a trigger that prompts you to take an action. In the case of learning habits, it’s habit #1, which is about setting aside dedicated learning time.
  • Craving. Craving is what you are wishing for, something that gives you a positive feeling, such as feeling accomplished, productive or useful.
  • Response. The craving then causes you to perform an action which is a response. It could be the art of tinkering or getting support from others when you share your learning progress.
  • Reward. Last but not least, the habit loop is completed by reward, which is the benefit you gain from engaging in the habit. And in building learning habits as a developer, the reward is reinforced by celebrating small wins.

Through this process, your brain will start associating the reward of celebrating small wins with the cues of learning at a dedicated time. This is how you create a lasting learning habit loop. 

Learning Is Critical For the Future of Work

Back in the day, career progression was largely linear. A person would moving up the traditional career ladder — from a junior role, to mid-level, to a senior role, before becoming a manager and then possibly retiring as a senior executive.

However, your career progression will not be the same in the future. It will be a lattice career progression, where you will move throughout your career, whether horizontally, diagonally, or vertically, in both directions. This form of career development has already become common in our generation as more workplaces have a flatter organizational structure and have an agile way of working.

It is estimated that 60% of all new jobs in the 21st century will require skills that only 20% of the current workforce possesses. What this means is that you will need to be flexible, adaptable, and always be learning and growing in your career to thrive in the future of work.

Being an exceptional learner gives you an edge and sets you up for your career success. I’m a firm believer that you can get better at anything in life if you take the time to understand the process and have the willingness to improve.

Learning is no exception. It is a skill that can be improved with practice. Building sustainable learning habits as a developer will keep you challenged, provide you with excitement, and move your career forward as a developer. 

Original article source at: https://www.sitepoint.com/

#developer #skills #learning 

Best 7 Learning Habits for Developers: Reach Skill Goals in Less Time

3 Amazing Commands to Level Up Your Skill with Git

Learn how to use git squash, git rebase, and git cherry-pick.

When I talk to people about Git, almost everyone has a strong reaction to the git rebase command. This command has caused many people to change directory, remove the repository, and just re-clone to start over. I think this comes from misconceptions about how branching actually works, a pretty terrible default interface, and some merge conflicts mucking things up.

Git squash

If you've ever made a lot of commits locally and wish there was a way to smash them all down into a single commit, you're in luck. Git calls this concept "squashing commits." I discovered the concept while working on documentation. It took me over a dozen commits to finally get a bit of markdown just right. The repo maintainer didn't want to see all my attempts cluttering up the project's history, so I was told to "just git squash your commits."

Squashing sounded like a solid plan. There was just one issue. I didn't know how to do it. As someone new to Git, I did what anyone would do. I consulted the manual for squash and immediately hit a snag:

$ man git-squash
> No manual entry for git-squash

It turns out I wasn't being told to run a Git command called squash, I was being asked to run an entirely separate command that would, in the end, combine all my commits into one. This is a common scenario: someone who has been using a tool for a while uses jargon or refers to a concept, which to them is absolutely clear, but isn't obvious to someone new to the tech.

Conceptually it would look like this:

Image of 6 bowls of different colored spices, and an arrow pointing to the second image of all the spices blended into one bowl.

Photos by Dan Burton on Unsplash

I'm laying it out this way to encourage you that you are definitely not the first or last person that would be confused by Git or someone talking about Git. It's OK to ask for clarification and for help finding the right documentation. What that docs maintainer actually meant was, "use Git rebase to squash the commits into one."

Git rebase

The git rebase command removes a chain of commits away from its first parent and places it at the end of another chain of commits, combining both chains of commits into one long chain, instead of two parallel chains. I realize that's a dense statement.

If you think back to how Git commits are chained together, you can see that any branch aside from your initial main branch has a parent commit that serves as the "base" of that chain. Rebasing is the act of making the last commit in another chain the new "base" commit for a specified branch.

You might already be more familiar with Git merge. Take a look at how the git-scm.com site explains the difference:

Image of Git merge versus git rebase shown as numbered bubbles.

(Git-scm.com, CC BY-SA 3.0)

In this example merge, Git preserves the chain of commits shown in the image as C4, which has a parent of C2, when combining the changes in C3 to make a whole new commit, C5. The branch pointer for "experiment" still exists and still points at C4.

The rebase in this example shows a similar situation of C4 first existing as a separate branch with a parent of C2. But then, instead of merging with the code of C3, it makes C3 the new parent of C4, resulting in a new commit called C4. Notably, the branch pointer "main" has not moved yet. To make Git move the pointer to the end of the chain, currently pointed at by "experiment", you also need to perform a merge.

Rebase is not a replacement for merge. It's a tool for making cleaner histories to be used in conjunction with merge.

Interactive rebase is your best friend!

One of the scariest parts of performing a rebase from the command line is the horrifying interface. Running the command git rebase <target-refr> either works or blows up. There's not a lot of feedback or way to ensure it is doing what you precisely want. Fortunately, the rebase command and many other Git commands have an interactive mode, which you can invoke with the parameter -i' or –interactive`.

Image of the Git lens interactive Rebase tool in VS Code.

(Dwayne McDaniel, CC BY-SA 4.0)

When invoking interactive mode, rebase transforms from a terrifying black box into a menu of options that let you do several things to the chain of commits you are rebasing. For every commit, you can choose to:

Pick: Include it as is

Reword: Rewrite the commit message

Edit: Make further changes to the files in the commit before the rebase finishes

Squash: Smash multiple commits into one commit, keeping all commit messages

Fixup: Smash multiple commits into one commit, but just keep the last commit message

Drop: Discard this commit

I personally like the way that the open source GitLens extension for VS Code lays out the options with dropdown picklists, but Git lets you assign these options using any editor. For text-only tools like Emacs or Vim, you need to type out the selection rather than pick from a menu, but the end result is still the same.

When to rebase

Knowing when to rebase is as important as knowing how to rebase. In truth, if you don't care about your repos histories being a bit messy, then you might never perform a rebase. But if you do want to make cleaner histories and have fewer commits cluttering up your graph view, then there is one clear rule of thumb to always keep in mind:

"Do not rebase commits that exist outside your repository and that people may have based work on."

If you follow that guideline, you'll be fine.

Simply put, if you make a local branch to do your work, feel free to rebase it all you want. But as soon as that branch is pushed, do not rebase it. It is really up to you.

Hopefully you found this helpful in understanding how the git rebase command works and can use it with more confidence. As with any Git command, practice is the only real way to learn and understand what is going on. I encourage you to brave and experiment with interactive rebase!

Git cherry-pick

Most developers have committed work only to realize they have been working on the wrong branch. Ideally, they could just pick up that one commit and move it over to the right branch. That is exactly what git cherry-pick does.

Cherry-picking is the art of rebasing single commits. This was so common of a pattern that they gave it its own command.

Image of a woman picking a cherry from one tree and putting on another tree.

(Crossroadsphotototeam, CC BY-SA 2.0)

To perform a cherry pick, you simply tell Git the ID of the commit you want to move to "here", where HEAD is pointing:

$ git cherry-pick <target-ref>

Should something go wrong, it's straightforward to recover, thanks to the error messages that Git provides:

$ git cherry-pick -i 2bc01cd
Auto-merging README.md
CONFLICT (content): Merge conflict in README.md
error: could not apply 2bc01cd… added EOF lines
hint: After resolving the conflicts, mark them with
hint: "git add/rm ", then run
hint: "git cherry-pick --continue".
hint: You can instead skip this commit with "git cherry-pick --skip".
hint: To abort and get back to the state before "git cherry-pick",
hint: run "git cherry-pick --abort".
$ git cherry-pick --abort

Git more power

The git rebase command is a powerful part of the Git utility. It's probably best to practice using it with a test repo before you have to use it under stress, but once you're familiar with its concepts and workflow, you can help provide a clear history of a repository's development.

Original article source at: https://opensource.com/

#git #skills 

3 Amazing Commands to Level Up Your Skill with Git
Sheldon  Grant

Sheldon Grant

1669689900

Top 10 Skills To Master for Becoming A Data Scientist

Top 10 Skills To Master for Becoming A Data Scientist

How To Become A Data Scientist?

This blog is a guide on how to become a Data Scientist. One thing is for sure, you cannot become a data scientist overnight. It’s a journey, for sure and a challenging one.

I am assuming that you are a fresher, so if you are planning to begin your career in Data Science, there is a protracted sojourn.

But how do I go about becoming one?

Where should I start from?

What is my learning roadmap?

Which tools and techniques do I need to know?

How will I know when I have achieved my goal?

You may also go through this recording of “how to become a data scientist” where you can understand the topics in a detailed manner.

In this post, I will address all of these questions.

I have listed down all the skills required to become a Data Scientist:

  1. Fundamentals
  2. Statistics
  3. Programming
  4. Machine Learning and Advanced Machine Learning (Deep Learning)
  5. Data Visualization
  6. Big Data
  7. Data Ingestion
  8. Data Munging
  9. Tool Box
  10. Data-Driven Problem Solving

Once you acquire these skills, Congratulations! You are a Data Scientist.

Below is the road map for becoming a Data Scientist.

Probably it took 5 minutes to read this post on how to become a Data Scientist, but yeah, be prepared for a long hectic journey in becoming one.

Road Map For Becoming A Data Scientist - How To Become A Data Scientist - Edureka

 

Now, let me explain all of these skills one by one. I hope that will make this blog more useful :)

Fundamentals:

This includes:

  • Matrices and Linear Algebra Functions
  • Hash Functions and Binary Tree
  • Relational Algebra, Database Basics
  • ETL ( Extract Transform Load )
  • Reporting VS BI (Business Intelligence) VS Analytics

Statistics:

This includes:

  • Descriptive Statistics (Mean, Median, Range, Standard Deviation, Variance)
  • Exploratory Data Analysis
  • Percentiles and Outliers
  • Probability Theory
  • Bayes Theorem
  • Random Variables
  • Cumulative Distribution function (CDF)
  • Skewness
  • Other Statistics fundamentals

I would suggest you to pick a dataset from UCI repo. and start right now!

Programming:

Expertise in any one programming language, I would suggest ‘R’ or ‘Python.

Machine Learning and Advanced Machine Learning (Deep Learning):

You should understand what is Machine learning and how it works.

Understand different types of Machine Learning techniques:

  • Supervised Learning
  • Unsupervised Learning
  • Reinforcement Learning

Good knowledge on various Supervised and Unsupervised learning algorithms is required such as:

  • Linear Regression
  • Logistic Regression
  • Decision Tree
  • Random Forest
  • K Nearest Neighbor
  • Clustering (for example K-means)

Nowadays everyone is talking about Deep Learning, as it solved a lot of limitations of traditional Machine Learning approaches. I would suggest you to understand how Deep Learning works. I have listed down few Deep Learning concepts that you should be familiar with:

  • Fundamentals of Neural Networks
  • Any one library used for creating Deep Learning models, such as Tensorflow or Keras.
  • Understand how Convolutional Neural Networks, Recurrent Neural Networks and RBM and Autoencoders work.

Data Visualization:

Data visualization is a very important part of Data life-cycle. 

Good hands-on knowledge is required on various visualization tools. Even, you can use a programming language for that purpose.

Below are few visualization tools:

  • Tableau
  • Kibana
  • Google Charts
  • Datawrapper

Big Data:

Big Data is everywhere and there is almost an urgent need to collect and preserve whatever data is being generated, for the fear of missing out on something important.

There is a huge amount of data floating around. What we do with it is all that matters right now. This is why Big Data Analytics is in the frontiers of IT. Big Data Analytics has become crucial as it aids in improving business, decision makings and providing the biggest edge over the competitors. This applies for organizations as well as professionals in the Analytics domain.

As a Data Scientist it is very important to have knowledge about frameworks that can process Big Data. Two of the most famous ones are ‘Hadoop’ and ‘Spark’.

Data Ingestion:

The process of importing , transferring , loading and processing data for later use or storage in a database is called Data Ingestion. This involves loading data from a variety of sources.

Below are few Data Ingestion tools:

  • Apache Flume
  • Apache Sqoop

Data Munging:

If you have ever performed data analysis, you might have come across feature selection before you apply your Analytical model to the data.

So, in general, all the activity that you do on the raw data to make it “clean” enough to input to your analytical algorithm is data munging.

You can use ‘R’ and ‘Python’ packages for that.

It is one of the most important part of the data life-cycle.

As a Data Scientist you should be able to understand what all features are important in the dataset and what all features can be removed. You should also be able to identify your dependent variable or label. 

Obviously, you have to remove inconsistency in the dataset.

All of these things are part of Data Munging (Data Wrangling).

Tool Box:

You might find this section pretty redundant, but I think it is very very important to have good knowledge on certain tools like:

Data-Driven Problem Solving:

All the things we have discussed so far, includes tools and technologies that you can learn. But, Data-Driven problem solving approach is something that you need to develop. It will only come with experience.

A Data Scientist needs to know how to productively approach a problem.

This means identifying a situation’s

  • salient features,
  • figuring out how to frame a question that will yield the desired answer,
  • deciding what approximations make sense, and
  • consulting the right co-workers at the appropriate junctures of the analytic process.

All of that in addition to knowing which data science methods to apply to the problem at hand.

I think I have pretty much covered everything. I hope you found this blog useful.

All the best for your journey in becoming a Data Scientist.

How to Become a Data Scientist | Data Scientist Skills

This video will explain all the skills required for becoming a modern day Data Scientist.

Original article source at: https://www.edureka.co/ 

#datascientist #skills 

Top 10 Skills To Master for Becoming A Data Scientist
Tech2 etc

Tech2 etc

1664804279

How do I start working as a freelancer?

To start freelancing while you already have a full-time job, you’ll have to consider the following steps:


How to start freelancing (even when working full-time)?

1. Define your business goals.
2. Find a perspective niche (and stick to it)
3. Identify target clients.
4. Set your freelance rates.
5. Create a website (and portfolio)
6. Find your first client.
7. Expand your network.
8. Balance your full-time job with your part-time freelancing side gigs.

Define your business goals

Before you start freelancing, you’ll have to be honest with yourself, and answer an important question:
* Is freelancing just a side gig? Or do you plan to expand it to a full-time business?

The answer to this question will determine your next steps, considering that you’ll either aim to balance your full-time and freelance work, OR aim to work your way out of your current job to pursue a full-time freelance career.

The answer to this question is your long-term goal. To pursue it, you’ll have to set a number of short-term goals and answer questions such as:

* What niche will you specialize in?
* What services will you offer?
* What amount do you want to be earning on a monthly basis to decide to quit your full-time job (if applicable)?

Find a perspective niche (and stick to it)

No matter whether you’re a graphic designer, copywriter, developer, or anything in between by vocation, it’d be best if you were to specialize in a particular area of work:

For example, If you’re a content writer, don’t aim to write about any topic under the sun, from Top 3 Ways to Prepare Your Garden for Spring to Taxation Laws in all 50 US States Explained.

Sure, you may start by writing various topics, to find your ideal niche, but eventually, you should pick one, and stick to it.

But, Cryptocurrency or Technology content writer always sound much better in your CV than General content writer. Moreover, they inspire more confidence in you on the part of the clients who’ll always be looking for specific, and not general content.

The same is true if you’re a graphic designer:
* consider your level of experience
* your current pool of connections
* your natural inclinations to a particular design niche

Then, make your pick — focus on delivering interface design for apps, creating new custom logos, devising layouts for books, or any other specific design work.

Identify target clients

Just like you shouldn’t aim to cover every niche in your industry, you shouldn’t aim to cater to the needs of the entire industry’s market.

Small businesses, teams, remote workers, or even other freelancers may all require the same type of service you’re looking to offer. But, you’ll need to target one or two types of clients especially.

Say you want to start a blog about everything related to working remotely. There are freelancers, teams, but also entire businesses working remotely, and they can serve as your starting point.

* Think about the age of your desired readers. Perhaps you’re a Millennial, so you can write a blog about working remotely for Millennials?
* Think about the location. Perhaps you want to cover predominantly the US market?
* Think about the education level. Perhaps you want to cover newly independent remote workers, who’re just starting out their careers?
* Think about income. Perhaps you’re looking to write for people with a limited budget, but who want to try digital nomadism?
* Think about gender. Perhaps you want to predominantly target women freelancers?

These are only some questions you should ask yourself, but they reveal a lot. For example, that you can write for fresh-out-of-college female Millennials from the US looking to start and cultivate a remote career while traveling abroad with a limited budget.

Set your freelance rates

Setting your freelance rates always seems like a challenging point, but it’s a lot more straightforward when you list the necessary parameters that help determine your ideal (and realistic) pricing:

* Experience (if any)
* Education level
* Supply and demand for your services
* The prices in your industry
* The average freelance hourly rates in your niche
* Your location

Once you have all this data, you’ll need to calculate your hourly rate based on it — higher education, experience, and demand for your niche will mean you can set higher prices. If you’re based in the US, you’ll likely be able to command higher rates than if you’re based in the Philippines. Of course, your living standards and expenses will be higher, so you’ll also need to command higher rates.

Create a website (and portfolio)

Once you’ve defined your business goals, found a niche, identified your target clients, and set your prices, you’ll want to create an online presence. And, the best way to do so is by creating your own website with a portfolio showcasing your previous work, skills, and expertise. There are plenty of amazing tutorials on YouTube.

Creating a website for free through a website builder like Wix is fine, but you’ll be better off if you were to buy a domain name from a hosting website. You’ll get a unique name for your online presence and a customized email address, so you’ll look much more credible and overall more professional to potential clients.

Regardless of what your industry is, it may be best if you were to choose your own name for the domain, especially when you’re mostly looking to showcase your portfolio. You’ll stand out better, and it’ll later be easier to switch to a different industry (or niche) if you find that you want to.

Once you’ve selected a host and domain name, you can install WordPress to your website, and choose the website’s theme. Then, you can add a landing page describing your services, and prices, maybe even a separate page for a blog where you’ll write about industry-related topics.

Find your first client

Your first client may contact you because of your personal website portfolio, but you should also actively pursue your first gig bearing in mind what employers look for. There are several ways you can do this:

* Get involved in your industry’s community
* Learn how to pitch through email
* Look through freelance job platforms/websites

Expand your network

Once you’ve landed your first client, you’ll need to work on finding recurring clients. Perhaps your first client will become a recurring one. And, perhaps the referral you’ve been given by said first client will inspire others to contact you and provide a steady stream of work.

In any case, it’s best that you expand your network — and here’s where the famous Pareto principle comes in handy. According to it, cultivating a good relationship with 20% of your clients will help you find 80% of new work through their referrals. Moreover, each new 20 referrals increase your chances of getting new projects by 80%.

To expand your network, you can:

* partake in industry webinars
* attend events
* join Facebook groups, pages and communities
* streamline your LinkedIn network
* send out invites to professionals in your field (or a field that often requires your services)

Work on additional skills

Apart from your core, industry-related freelance skills (i.e., your hard skills), you’ll need to work on some additional skills — your soft skills.

Soft skills are more personality-related: communicativeness and critical thinking are probably the most important traits to pursue, but, you’ll also need to be persistent, good at handling stress, an efficient scheduler, and skilled in time management.

The more you can skill up yourself, the more expensive you will become. Remember knowledge is priceless.

You’ll also need to be confident, to persuade your potential clients that you possess the skills and experience they’re looking for.

Conclusion

Entering the freelancing business may sound overwhelming and complicated, but it’s actually pretty straightforward, once you follow the right steps.

Take time and do what you find passionate about.

 

#freelance #freelancing #job #jobs #projects #money #earning #skills #dev 

How do I start working as a freelancer?
津田  直子

津田 直子

1649795520

身につけて良かったスキル5選!

今回は、僕が今までに身につけてきたスキルの中で特にこれはビジネスやキャリア形成において大きく役立ったなというものを、5つほど簡単にご紹介してみました。

1. エンジニアスキル

2. 習慣化スキル 

3. 外部発信スキル 

4. お声がけスキル(営業スキル) 

5. 面接スキル

#skills #engineers 

身につけて良かったスキル5選!
黎 飞

黎 飞

1644730560

如何高效管理時間、避開社交媒體的誘惑?

你是否經常每隔幾分鐘就會忍不住滑一次手機?

你是否每次工作時,只要聽到電話「叮」的一聲,就會下意識地查看手機通知?

你是否很常被一些小事打擾,導致無法按時完成工作?

如果幾乎每個情況都有,那你想不想知道應該怎麼做,才可以擺脫社交媒體上癮症,奪回被偷走的時間?

如果你想拿回時間的掌控權,記得觀看今天的影片!

 #skills #time #management 

如何高效管理時間、避開社交媒體的誘惑?

IoT Skills

Skills required for an IoT Developer

 

What is IoT?

IoT is a group of connected devices that are accessible via the internet. The term ‘things’ in IoT refers to a car with in-built sensors or a person with a heart rate monitor, i.e. devices that are assigned with an IP address and have the ability to collect data and transfer it over a network without the need of any individual.

 

Skills required for an IoT Developer

IoT is all about the interaction between applications and physical devices. An IoT development team should be essentially large and developers are divided into different areas depending on their respective works.

Some of them include networking, software programming, security implementation, hardware programming, and system engineering.

 

Programming

IoT development demands proficiency in some of the programming languages, both for hardware and software. So, an IoT developer needs to learn basic programming languages for embedded systems like C, C++, and some high-level languages like Java, Node.JS, and Python.

 

Electronics and circuits

IoT development consists of a lot of hardware prototyping, to achieve this, it requires the building of circuits and integrating them on breadboards. Understanding of electronics and various electrical components like capacitors, resistors is essential.

 

Sensors

Sensors are a crucial part of IoT, without them, it becomes hard to collect data from its environment. Knowing the functionality of these sensors can help developers to build devices more easily.

 

Raspberry Pi

The Raspberry Pi has become very popular because of its size and efficiency. It is a fully capable computer with very little cost, it is preferred mostly by experts in computer science and electronics for assembling prototypes. So, it is well suited for IoT development.

 

Network and Information Security

Similar to any other digital network, the IoT devices are always connected to the Internet and are vulnerable to cyber attacks, like denial of service attacks. As most of the devices are embedded in our homes we need to consider this as a top priority.

 

Explore our website, click here.

 

#iot #skills #careers 

7 Lecciones De Un Líder Técnico Primerizo

"Creemos que está listo para ser un líder tecnológico".

Esas palabras se sintieron falsas. Quería ser un líder tecnológico algún día, pero no sabía que un día se tradujera a hoy , traducido a 2,5 años de trabajo como desarrollador de software. Me sentí increíblemente inexperto.

Sin embargo, me senté en una llamada de Zoom con cuatro líderes técnicos en mi empresa que admiro. Vieron una oportunidad para mí de probar algo nuevo en un entorno de confianza con su apoyo. Hablaron uno por uno, explicando por qué estaba listo y cómo harían todo lo posible para apoyarme.

Nunca supe que podía sentirme tan emocionada y al mismo tiempo asustada.

Sería un desafío, pero quería intentarlo de todos modos.

Y así es como me convertí en líder tecnológico en septiembre de 2021. Cinco meses después, mi proyecto está finalizando debido a circunstancias fuera de mi control, y estoy orgulloso del trabajo de mi equipo y de cómo avancé como líder tecnológico.

Aprendí más de lo que podría haber imaginado, tanto técnico como no técnico. Mientras me reunía regularmente con líderes tecnológicos anteriores y actuales para recibir asesoramiento y capacitación a lo largo de mi proyecto, aprendí lecciones que llevaré conmigo a lo largo de mi carrera.

Estas son mis 7 lecciones principales para clientes potenciales tecnológicos primerizos, porque usted también puede hacerlo.

1. Sea estratégico, no reaccionario.

Como líder técnico, constantemente te lanzarán obstáculos, o al menos lo fueron para mí. Alguien abandona el proyecto, un proceso externo tarda más de lo esperado o nadie nota un error antes de que sea demasiado tarde.

Estos son pequeños baches en un largo camino. Es fácil reaccionar a todo en tiempo real. Cree que necesita responder a todos los mensajes de inmediato, o necesita cambiar todo en el momento en que ocurre un problema.

En cambio, su trabajo es ser estratégico.

Desde el principio, es necesario pensar a largo plazo. Debe comprender el objetivo general de una decisión técnica dada, y todas las curvas o golpes se medirán en función de cómo afecta la estrategia general.

Si no planificas, todos los demás lo harán por ti. Todos los demás problemas tendrán prioridad sobre su hoja de ruta.

Por ejemplo, si está creando una aplicación para muchos consumidores, aunque necesita comprender los diferentes casos de uso y la urgencia, también debe centrarse en la estrategia para llevar la aplicación a buen término. Si un consumidor solicita una función, averigüe cómo puede integrarse en la estrategia existente, no reemplazarla.

2. Concéntrese en las incógnitas conocidas.

¿Cómo construimos esta API? ¿Cuál es la línea de tiempo de ese otro equipo?

Estas son solo dos de las muchas preguntas que puede encontrar en su tiempo como líder técnico. Lo desconocido puede ser agotador, mantenerlo despierto por la noche, dar vueltas y vueltas a las decisiones de arquitectura , de todas las cosas.

Me abruman las incógnitas. En mi tiempo como líder técnico, encontramos aproximadamente tres incógnitas más por semana. En cada momento, se sentía como si hubiera un nuevo equipo para buscar, una nueva estrategia para descubrir y un nuevo registro de decisiones de arquitectura para escribir.

Me abrumaban tanto las incógnitas que comencé a guardarlas para mí. En lugar de decirle a mi equipo, mi cabeza se arremolinaba constantemente con preguntas. Tenía miedo de admitir que no sabía cosas, particularmente preguntas que surgían de la nada para arruinar mis planos de arquitectura o mi investigación completa.

Afortunadamente, me di cuenta de que necesitaba escribirlos y obtener una estrategia. Mapeé mis preguntas en nuestro diagrama de arquitectura, se las presenté al equipo y nos pusimos a trabajar.

Si bien lo desconocido puede dar miedo, escribe lo que sabes. Si sabes que existe un desconocido, eso es suficiente para comenzar a investigar. No escondas las preguntas en tu cabeza porque nadie más es consciente de su importancia.

3. “No sé” es un superpoder.

Admitir cuando no sabes algo es verdaderamente heroico.

No necesita saberlo todo como líder técnico. Pero, usted está en una posición única para indicarle a su equipo dónde pueden encontrar respuestas.

Hay tanto poder en "No sé, pero sé quién podría" o "No sé, pero resolvámoslo juntos".

Con “No sé, pero…” estás diciendo que está bien no saber. Estás admitiendo que no eres un diccionario perfecto de un ser humano. Lo crea o no, los líderes no son perfectos.

No te castigues por no saber, míralo como un momento para aprender algo nuevo y enseñar a otros cómo resolverlo la próxima vez.

4. Sea un líder orientado a las soluciones.

Si los miembros del equipo se quejan de algo, no eres responsable de encontrar la solución perfecta. No eres el hada madrina de nadie.

En su lugar, ayude a transformar sus quejas en soluciones. Pregúntele al miembro de su equipo: "¿Qué podemos cambiar para mejorar este escenario?"

Dirija a su equipo para pensar en soluciones.

Los desarrolladores son solucionadores de problemas, ya sea de código o no. Para que crezcan en sus carreras, no pueden esperar que alguien más resuelva siempre sus problemas. Si bien puede ser líder técnico, no puede ser responsable de todos los problemas.

Deje que su equipo resuelva algunos problemas por su cuenta, y es probable que se tomen la solución en serio, ya que no se la entregaron.

5. No te hagas irremplazable.

En última instancia, no eres tu producto y tu producto no eres tú.

Como líder técnico, usted está involucrado en cada parte del proyecto. Mientras lidera el aspecto técnico, también debe comprender cómo funcionan los aspectos de diseño y producto. Por lo tanto, usted es una reserva de información: comprender cómo encajan todas las partes.

Si bien es bueno que conozcas el proyecto en general, no deberías ser el único . Si eres el único que conoce alguna información, hay un problema. Dar a otros la oportunidad de aprender y crecer.

En un momento u otro, decidirás que es hora de abandonar el proyecto. Después de todo, el software vive mucho después de las personas que trabajan en él (bueno, la esperanza es que el software perdure, ¿verdad?). No quieres ser insustituible.

En su lugar, debe asegurarse constantemente de que otros puedan probarse los muchos sombreros que usa, y su conocimiento debe documentarse hasta cierto punto. Hará que sea más fácil para la próxima persona asumir el papel y no se detendrá ante futuras oportunidades.

6. Si las herramientas no te sirven, arréglalas.

Como líder técnico, realiza un seguimiento de las historias en las que están trabajando sus desarrolladores y de lo que viene a continuación. Si bien algunas responsabilidades también se dividen con su gerente de proyecto y gerente de producto, en última instancia, usted es responsable de que los desarrolladores reciban el trabajo y los ayuden si están bloqueados.

Para cualquier herramienta que use a diario, personalícela para que se ajuste a sus necesidades. Por ejemplo, su tablero de seguimiento de problemas (JIRA, Trello, Zenhub, etc.) debería brindarle una vista rápida de todo lo que sucede. Debería ayudar a organizar los próximos sprints y proporcionar suficiente información a sus desarrolladores.

Si no es así, arréglalo.

Como líder técnico, pasé más tiempo del que me gustaría admitir pasando el mouse sobre los íconos de perfil de Github de los miembros del equipo para discernir quién estaba trabajando en qué tarjeta. Ninguno de ellos puso fotos de perfil, por lo que todos eran patrones genéricos de cuadrados de colores. Les pedí que agregaran fotos y me ahorré dolores de cabeza.

También agregué etiquetas, columnas y cualquier otra cosa para ayudar a organizar el tablero. Cualquier herramienta que use debe personalizarse para ayudarlo a usted y a su equipo.

Haz esos cambios.

7. El éxito del proyecto no depende solo de ti.

Como líder tecnológico por primera vez, me resultó fácil pensar que el éxito del proyecto descansaba sobre mis hombros, a pesar de que todos en el equipo jugaron un papel importante. Casi me quemo, tratando de resolver cada problema. No es sostenible ni razonable.

No se mide únicamente por el éxito de su proyecto.

Si el proyecto falla, no significa que usted sea un líder tecnológico fallido.

En lugar de presionarte a ti mismo, apóyate en los miembros del equipo para que te ayuden. Pida ayuda, organice reuniones individuales y concéntrese en cuidar su bienestar. Tu equipo te necesita para este proyecto, pero también necesitan que te cuides.

Si bien estas 7 lecciones resumen las cosas más importantes que aprendí como líder técnico, aprendí muchas más en los últimos cinco meses. Originalmente, no me sentía calificado , pero ese sentimiento no fue suficiente para detenerme de aprovechar esta oportunidad.

Sigue tus instintos y confía en ti mismo.

Extenderás tus habilidades de maneras inimaginables al probar un nuevo rol.

Y recuerda:

  1. Crea estrategias.
  2. Conoce tus incógnitas.
  3. Admite cuando no sabes.
  4. Piensa en soluciones.
  5. Ser reemplazable.
  6. Arregla tus herramientas para servirte.
  7. Pedir ayuda.

Me gustaría agradecer enormemente a mis modelos técnicos y al sistema de soporte durante mi tiempo como líder técnico. No podría haberlo hecho sin ustedes. Gracias por creer en mí, TA, AA, KB, PP y AM. 

Enlace: https://betterprogramming.pub/7-lessons-from-a-first-time-tech-lead-12a136a690ec 

#tech #skills 

7 Lecciones De Un Líder Técnico Primerizo

初めての技術リーダーからの7つの教訓

「私たちは、あなたが技術リーダーになる準備ができていると思います。」

それらの言葉は偽物だと感じました。いつか技術リーダーになりたかったのですが、ある日が今日に翻訳されることを知りませんでした。ソフトウェア開発者としての2。5年間の仕事に翻訳されました。私は信じられないほど経験が浅いと感じました。

それでも、私は尊敬する会社の4人の技術リーダーとZoomの電話に出ました。彼らは私が彼らのサポートを受けて信頼できる環境で何か新しいことを試す機会を見ました。彼らは私が準備ができている理由と彼らが私をサポートするために彼らができるすべてをする方法を説明して、一つずつ話しました。

こんなにワクワクしながらも怖くて気持ちがいいとは思ってもみませんでした。

やりがいはありますが、とにかくやってみたかったです。

そして、それが私が2021年9月に技術リーダーになった理由です。5か月後、私のプロジェクトは私の制御できない状況のために終了し、私のチームの仕事と私が技術リーダーとしてステップアップした方法を誇りに思っています。

技術的および非技術的の両方で、想像以上に多くのことを学びました。プロジェクト全体を通して、以前および現在の技術リーダーと定期的に会い、アドバイスやトレーニングを行いながら、キャリアを通じて携わる教訓を学びました。

これが、初めての技術リーダーのための私のトップ7のレッスンです。あなたもそれを行うことができるからです。

1.反動的ではなく、戦略的であること。

技術リーダーとして、カーブボールは常にあなたに投げられます、または少なくとも彼らは私のためでした。誰かがプロジェクトを離れる、外部プロセスに予想よりも時間がかかる、または手遅れになる前に誰もバグに気付かない。

これらは長い道のりの小さな隆起です。リアルタイムですべてに反応するのは簡単です。すべてのメッセージにすぐに答える必要があると思います。または、問題が発生した瞬間にすべてをピボットする必要があります。

代わりに、あなたの仕事は戦略的であることです。

最初から、あなたは長期的に考える必要があります。特定の技術的決定の全体的な目標を理解する必要があります。すべてのカーブボールまたはバンプは、それが全体的な戦略にどのように影響するかに対して測定されます。

あなたが計画しない場合、他の誰もがあなたのために計画します。他のすべての問題は、ロードマップよりも優先されます。

たとえば、多くの消費者向けのアプリを作成している場合、さまざまなユースケースと緊急性を理解する必要がある一方で、アプリを実現するための戦略にも焦点を当てる必要があります。消費者が機能を要求した場合、それを既存の戦略に組み込む方法を理解します。それを置き換えるのではありません。

2.既知の未知数に焦点を合わせます。

このAPIをどのように構築しますか?他のチームのタイムラインは何ですか?

これらは、技術リーダーとしての時代に遭遇する可能性のある多くの質問のうちの2つにすぎません。未知のものは、何よりも、あなたを夜更かししたり、アーキテクチャの決定を投げたり、ひっくり返したりする、厳しいものになる可能性があります。

私は未知のものに圧倒されます。私が技術リーダーを務めていたとき、毎週約3つの未知数が見つかりました。毎回、新しいチームを探し、新しい戦略を発見し、新しいアーキテクチャの決定記録を作成するように感じました。

私は未知のものに圧倒されて、私はそれらを自分自身に留め始めました。私のチームに話す代わりに、私の頭は常に質問で渦巻いていました。私は物事、特に私の建築計画を台無しにしたり研究を完了したりするためにどこからともなく飛び出した質問を知らなかったことを認めることを恐れていました。

幸いなことに、私はそれらを書き留めて戦略を立てる必要があることに気づきました。質問をアーキテクチャ図にマッピングしてチームに提示し、作業に取り掛かりました。

未知のものは恐ろしいことがありますが、あなたが知っていることを書き留めてください。未知のものが存在することがわかっている場合は、調査を開始するのに十分です。他の誰もそれらの重要性を認識していないので、あなたの頭の中に質問を隠さないでください。

3.「わからない」は超大国です。

あなたが何かを知らないときに認めることは本当に英雄的です。

技術リーダーとしてすべてを知る必要はありません。しかし、あなたはチームが答えを見つけることができる場所をチームに示すというユニークな立場にあります。

「わからないけど、誰ができるかはわかる」「わからないけど、一緒に考えてみよう」には力があります。

「わからないけど…」とは、知らなくても大丈夫だということです。あなたは自分が人間の完璧な辞書ではないことを認めています。信じられないかもしれませんが、リーダーは完璧ではありません。

知らないことで自分を殴らないでください。何か新しいことを学び、次にそれを解決する方法を他の人に教える瞬間として見てください。

4.ソリューション指向のリーダーになります。

チームメンバーが何かについて不平を言った場合、あなたは完璧な解決策を見つける責任がありません。あなたは誰の妖精の名付け親でもありません。

代わりに、彼らの苦情を解決策に変えるのを手伝ってください。チームメンバーに、「このシナリオを改善するために何を変更できますか?」と尋ねます。

チームを率いてソリューションをブレインストーミングします。

コードであろうとなかろうと、開発者は問題解決者です。彼らが自分のキャリアで成長するために、彼らは他の誰かが常に自分の問題を解決することを期待することはできません。あなたは技術リーダーかもしれませんが、すべての問題に責任を持つことはできません。

あなたのチームにいくつかの問題を自分たちで解決させてください。そうすれば、それは彼らに渡されただけではないので、彼らはおそらく解決策を心に留めるでしょう。

5.自分をかけがえのないものにしないでください。

最終的に、あなたはあなたの製品ではなく、あなたの製品はあなたではありません。

技術リーダーとして、あなたはプロジェクトのあらゆる部分に関与しています。技術面をリードする一方で、設計面と製品面がどのように機能するかを理解する必要もあります。したがって、あなたは情報の予備です—すべての部品がどのようにかみ合うかを理解します。

プロジェクト全体を知ることは素晴らしいことですが、あなただけではありません。あなただけがいくつかの情報を知っているなら、問題があります。他の人に学び、成長する機会を与えましょう。

ある時点で、プロジェクトを終了する時期を決定します。結局のところ、ソフトウェアはそれに取り組む人々の後に長く生きています(わかりました—永遠のソフトウェアへの希望ですよね?)。あなたはかけがえのないものになりたくありません。

代わりに、他の人があなたが着ている多くの帽子を試着できることを常に確認する必要があり、あなたの知識はある程度文書化する必要があります。あなたは次の人がその役割を引き受けやすくするでしょう、そしてあなたは将来の機会から身を引くことはありません。

6.ツールが役に立たない場合は、修正します。

技術リーダーとして、開発者が取り組んでいるストーリーと次に何が起こるかを追跡します。一部の責任はプロジェクトマネージャーとプロダクトマネージャーにも分担されますが、最終的には、開発者が作業を受け取り、ブロックされた場合に開発者を支援する責任があります。

日常的に使用するツールについては、ニーズに合わせてカスタマイズしてください。たとえば、問題追跡ボード(JIRA、Trello、Zenhubなど)を使用すると、進行中のすべてを一目で確認できます。これは、今後のスプリントを整理し、開発者に十分な情報を提供するのに役立つはずです。

そうでない場合は、修正してください。

技術リーダーとして、私はチームメンバーのGithubプロファイルアイコンにカーソルを合わせて、誰がどのカードで作業しているかを見極めるために、認めたいよりも多くの時間を費やしました。それらのどれもプロフィール写真を設定しなかったので、それらはすべて色付きの正方形の一般的なパターンでした。私は彼らに写真を追加するように頼み、頭痛の種を自分で救った。

また、ボードを整理するために、ラベルや列などを追加しました。使用するツールはすべて、あなたとあなたのチームを支援するためにカスタマイズする必要があります。

それらの変更を行います。

7.プロジェクトの成功は、あなただけに依存しているわけではありません。

初めての技術リーダーとして、チームの全員が大きな役割を果たしたにもかかわらず、プロジェクトの成功が私の肩にかかっていると思いがちでした。私はほとんど自分自身を焼き尽くし、すべての問題を解決しようとしました。それは持続可能でも合理的でもありません。

プロジェクトの成功だけで評価されるわけではありません。

プロジェクトが失敗したとしても、それはあなたが技術リーダーの失敗であるという意味ではありません。

自分にプレッシャーをかけるのではなく、チームメンバーに頼って助けてください。援助を求め、一対一の会議を設定し、あなたの幸福の世話をすることに集中してください。あなたのチームはこのプロジェクトのためにあなたを必要としていますが、彼らはあなた自身の面倒を見る必要もあります。

これらの7つのレッスンは、私が技術リーダーとして学んだ最大のことを要約していますが、過去5か月でさらに数十を学びました。もともと資格を感じていませんでしたが、その気持ちだけではこの機会を逃すことができませんでした。

あなたの本能に従い、あなた自身を信頼してください。

新しい役割を試すことで、想像を絶する方法でスキルを伸ばすことができます。

そして覚える:

  1. 戦略を立てます。
  2. あなたの未知数を知っています。
  3. わからないときは認めてください。
  4. 解決策を考えてください。
  5. 交換可能です。
  6. あなたに役立つようにあなたのツールを修正してください。
  7. 助けを求める。

技術リーダーとしての私の技術的役割モデルとサポートシステムに心から感謝します。私はすべてがなければそれを行うことができなかったでしょう。私、TA、AA、KB、PP、AMを信じてくれてありがとう。 

リンク:https ://betterprogramming.pub/7-lessons-from-a-first-time-tech-lead-12a136a690ec 

#tech #skills 

初めての技術リーダーからの7つの教訓

HR BIZ HUB

1638251688

Top 20 Skills to have on your resume

There are endless skills that you can include on any resume, and you have to decide which ones will be the most effective.
.
Let us help with the top 20 skills that our Inspiration Pooja Sankhala analyzed and have seen be the most successful.

www.hrbizhub.com

Pooja Sankhala Pooja Sankhala monika sankhala Jagruti Hiwase Priya Jha Gaurav Yadav
#skills #resume #softskills #hardskills #hrbizhub #Top20

Top 20 Skills to have on your resume