作为开发人员,我希望了解的主要习惯和事情

A listing of key habits and skills that could help you become a better developer

作为开发人员,您希望了解哪些方面的知识? 有什么习惯,书本,文章或技巧吗?请在评论部分分享。

Summary

以下是一些习惯和事情的快速摘要,我认为,如果早先被称为开发人员,它们将产生巨大的变化。 当然,永远不会太迟

  • 高效使用搜索引擎使用现代IDE来提高生产力学习Linux学习Git编码标准很重要Teach yourself & follow tech trends收听技术播客精通至少一种编程语言专注于简单性学习设计模式加入社区/论坛创建专业资料问,问,问首先用纸解决,然后转换为代码从头开始记录和编写测试定期解决难题/挑战尽早开始白板有效地管理您的时间保护您的个人信息Follow influencers & companies that inspire you参加技术活动,研讨会,讲座和黑客马拉松拥抱错误消息❤为实习/职业选择合适的公司类型首先开发一个可行的解决方案,然后迭代完善SEO自己

和往常一样要注意以下习惯/模式

  • 不要轻易放弃! ❤不要复制作业/项目不要拖延-如果不是现在,什么时候?不要忽略其他主题不要沉迷于社交网络不要失去希望

Learning

由于行业的发展速度,学习是技术兴旺发达的先决条件。 总会有一些新东西要学习。

一旦停止学习,就开始垂死-艾伯特·爱因斯坦

Search efficiently

As a developer, you will use search engines very often and a majority of search engines offer advanced features. See tips and infographics

Development IDEs

IDEs such as IntelliJ, Atom come with shortcuts, plugins and features aimed to increase your productivity. Invest a little time to learn how to best use an IDE.

Learn Linux

Installing Ubuntu natively, using VirtualBox or Windows Subsystem for Linux is a piece of cake. Linux/Unix knowledge is a huge plus.

Learn Git

Git is one of the most popular code versioning tool. I suggest start Git-ing as early as possible with your projects and assignments. A great way to learn Git is through documentation, article and maybe this interactive online resource.

Teach Yourself

It is a fact that your program of study does not prepare you for real world regardless of university’s ranking, depth of the curriculum or caliber of the professors. Nowadays there is no shortage of learning materials both offline and online.

Crunchzilla is a step by step how to code games for beginners. My favourite Youtube channels are Derek Banas, LearnCode ACademy, FreeCodeCamp and CodingTeCh. Finally, a listing of open courseware on EDX, Stanford Online, and MIT OpenCourseWare that you could learn from.

Learn at least one language concretely

在大学里,我从基础到高级数据结构学习C编程已有2年了。 它帮助建立了强大的编程基础,而其他所有语言都只是语法,术语和结构的改变。

Focus on Simplicity

您会惊讶于编码时按需的简单性,而没有人会欣赏复杂,难以理解和维护的代码。

简单性是可靠性的前提。 —埃格·迪克斯特拉(Edsger W. Dijkstra)

Coding Standards Matter

在整个生命周期中,将代码从一个开发人员迁移到另一个开发人员是非常普遍的。 必须遵循通用的编码准则,以确保代码易于理解,扩展和维护。 点击下面的图片阅读我的文章Java编码最佳实践。

Foo

Learn Design Patterns

Similar to coding standards, knowledge of design patterns help you architect close to immortal systems (ok maybe not immortal, but you get the point).

Listen to tech podcasts

Podcast are great ways to broaden your technical knowledge when commuting, walking, driving and so on. I would highly recommend checking out the Software Engineering Daily podcast.


Communities & Profiles

社区是您与志趣相投的专业人员建立联系,学习和回报的地方。

GitHub

Creating a profile allow you to setup your own repos, follow inspiring contributors, appreciate others work by staring their repository, and most importantly contribute back to the open source projects. Here is my GitHub profile.

如何贡献? 您可以举报虫子,写文件资料,回答问题,修复问题并创建新功能。

值得一提的是,雇主青睐开源贡献者。

StackOverflow

小号tackOverflow is the largest Software Development Q&A website. A SO profile is good to have. See Rob’s comment on its significance in interviews.

  • Ask difficult & meaningful questions回答提问提出有用的问题/答案

LinkedIn

A LinkedIn profile is the first step towards building your online presence.

  • 建立您的专业网络Subscribe to updates from companies & influencers探索工作,撰写和阅读文章

Similarly, AngelList and IndieHackers, Reddit are great communities to be a member of. See my profile below for my profiles.

rhamedy image

Rafiullah Hamedy

Senior software developer | Co-founder | Traveller & blockchain enthusiast

Habits

Developing a few habits early on would greatly help you down the road. I highly recommend reading The Power of Habit by Charles Duhigg.

  1. Tech is a fast-paced industry. Stay up to date with social networks & sites such as slashdot & techcrunch.

  2. Don’t be shy! Ask for advice from those with expertise

  3. Always plan and solve the problem in paper and then write the code. This is very powerful.

  4. Write code that aligns with industry adopted coding standards. Start writing tests early for assignments, projects.

  5. Develop a habit of solving puzzles/challenges on regular basis. This will serve you dearly whether it’s interview, your job, side project, etc.

  6. Whiteboarding skill never let you down whether it is interview, on the job. Probably one of the most overlooked skill.

  7. Understand how much time you have in your hand and use it wisely. Do the math, calendar block tomorrow and use RescueTime/Toggl if you are comfortable with their Privacy Policy.

  8. Protect your identity by reading privacy policies, terms of services, using VPN & Encryption, password manager, enabling 2FA, and so on.


Socializing & Networking

There are many benefits to networking and socializing such as

  • 建立您的专业网络激发灵感并启发他人了解开发者社区,工作,指导,志愿服务等寻找您的联合创始人和项目合作伙伴提高您的软技能,例如说,积极聆听等。

我们已经过去了孤胆英雄,这是关于团队合作现在。 结识所有专业知识的人,例如法律,财务,销售,市场营销等。 将来,无论是辅助项目,改变行业等,它都将派上用场。

If you find networking difficult, I recommend reading self help books i.e. Quiet: The Power of 一世ntroverts in a World That Can’t Stop Talking and there is a ton of tips and advice on internet.

Follow Influencers & Companies

充分利用社交网络。 关注能够激发并提醒您梦想和目标的人和公司。 我使用社交网络来

  • Stay connected with family and friends
  • Read updates from companies such Google, Microsoft, Apple, United Nations, Amazon, Netflix, SpaceX, Tesla, and so on.
  • Follow public figures like Elon Musk, Bill Gates, Leonardo DiCaprio, Jeff Atwood, Dan Abramov, Dave Syer, Evan You, Vitalik Buterin and so on.
  • Attend monthly meetups (i.e. Hackernest), workshops, talks, hackathons

Side Projects

按照您的想法行事。 别人正在考虑的机会很高。

  • 选择一个好主意,并进行可行性和市场研究Connect with your professional network to find partners & co-foundersWork in your free time while maintaining a healthy work/life balance & don’t forget to see the idea through completion

Researching

作为软件开发人员,您将不断学习和研究。 给自己首先阅读文档的习惯如果这样做没有帮助,则搜索其他学习资料,例如示例,教程等。

Error Messages

遇到错误消息时,请不要失望。 学习什么事啊 什么时候发生?和如何优雅地处理?

Choose the right Company

Recently, I came across this article by Brenn where he explains the benefits of working for a Product vs Consulting company — Might help decide your next career/internship option.

SEO Yourself

你曾经用谷歌搜索吗? 您的个人信息安全吗? 您的公共信息容易获得吗? 利用搜索引擎的魔力来实现您的目标,无论它是共享智慧,推广品牌,吸引追随者还是传播意识。


Things you should avoid

建立和消除习惯需要时间。

Do not give up easily

有不同的线索导致放弃。 作为软件开发人员,您将轻松遇到

  • 烦人的问题可怜的旧代码学习其他语言,工具和领域知识与具有不同编码习惯,意见等的人一起工作

通常,不放弃和继续尝试是一个好习惯,但不要固执,不明白什么时候该放手继续前进。

在编码方面,如果您即将放弃,请尝试以下方法

  • 休息一下,稍后或第二天回来尝试在纸上解决向专业人士寻求帮助

Do not copy assignments

当我开始计算机科学学位时,第一个C编程任务是“写一个计算x的程序ñ (x to power of ñ) usiñg + (plus) añd — (miñus) operators where x añd ñ are iñtegers provided by the user”。

我花了很长时间没有上网才能在纸上找到解决方案。 我学会了不放弃,继续努力,以后的工作变得越来越容易。

Do not fall for social network addiction

信不信由你,大多数社交网络都由具有一个目标的算法提供支持-利用您的时间增加公司的投资回报率。

Do not lose hope, you are smarter than you think

最后,感到无望和忧虑的人会经常光顾,您将必须学习如何应对。 以下是您的防御要点

  • 不要让知识鸿沟让您担心或绝望–请参阅以下文章不要被更好的人吓倒了-您会到达那里的不要因为不了解人工智能,机器学习,区块链等一切而失去希望,您将最终学习它们

dan Abramov, one of the developers I follow is the co-creator of famous Redux framework wrote the following article that I consider a great read.


Other Articles

到目前为止,我已经写了以下文章

including A short summary of Java cod一世ng best practices on medium.

This article is a port-over plus some additions and changes of the original article from medium that has nearly 9K claps.

注意:我的中篇文章均未按计量。Paywall是我探索dev.to的原因


Relevant articles

  1. Finally, some relevant articles for those who wish to read more. One of my favorite articles on 25 Tips for New Developers by Ali

  2. A must-read article Advice to new software developers where he touches on Product vs Consulting company for career/internship.

  3. What New Developers Should Really Focus On by Lydia who also wrote another article that might resonate to new developers.

  4. Some great tips by Stephen on his blog post (Code by hand — my absolute favorite, take breaks when debugging)

  5. Another 15 Tips for Junior Developers by Natasha on her blog (Separate your concerns i.e. SRP, write short methods, find a mentor)

  6. Some amazing tips by Emad on his blog (i.e. contribution to open source, asking asking, writing blogs, etc)

感谢您阅读和分享您的评论! 关注并通过社交媒体网络与我联系以获取将来的文章。

from: https://dev.to//rhamedy/key-habits-and-things-i-wish-i-knew-earlier-as-a-developer-2c97

你可能感兴趣的:(git,java,数据结构与算法)