没有超人,关注该关注的即可!
(一)
如果遇到问题,先Google一下
https://www.google.com/,或者Bing
https://www.bing.com/
解决问题的顺序:查看日志->官方文档->Google英文或Bing英文->Stackoverflow->Github->查专业论坛->查看源码->问人->发帖。
如果有Error Log,可以尝试直接Google一下Log内容,99%会在搜索结果页中看到StackOverflow
http://stackoverflow.com/的(基本在第一页很靠前的位置)链接,看看它基本上就能解决问题。
如果需要使用开源项目,就去GitHub
https://github.com/ 搜索一下star大于1000的,基本会有符合的解决方案,不会搜索直接看Awesome列表 (
awesome、
awesome-awesomeness)。
如果在多个开源方案之间犹豫不决,最好去Google一下“AAA vs BBB”,很多好心人会详细说明他们的pros/cons。
(二)
茶余饭后,可以翻翻知乎
http://www.zhihu.com/ 或 Quora
http://www.quora.com/
如果时间充裕,喜欢泡社区,可以去SegmentFault
http://segmentfault.com/ 或 V2EX
https://www.v2ex.com/。
如果时间不多,可以关注简书
http://www.jianshu.com/ 或 Medium
https://medium.com/
也可以听听Podcast,比如Teahour.fm
http://teahour.fm/、内核恐慌
http://ipn.li/kernelpanic/、IT公论
http://ipn.li/itgonglun/、比特新声
http://www.bitvoice.xyz/。
虽然电子书、视频、音频可以打发碎片时间,但是由于获取更容易数量太多以及质量的问题,反而会浪费时间。
(三)
如果喜欢分享,自己开个Blog记录一些值得记录的东西。可以搭独立域名,可以用GitHub Pages
https://pages.github.com/,也可以在这些博客网站申请个Blog,比如:CSDN、cnblog、iteye、51cto。
如果爱刷微博,关注一些技术相关的账户他们会推送很多有价值的东西。
如果爱看微信公众号,关注一些技术相关的公众号。
(四)
如果想知道最近大家都在讨论什么,每天抽一点时间看看 极客头条
http://geek.csdn.net/ 或 开发者头条
http://toutiao.io/ 或 HackerNews
https://news.ycombinator.com/
如果想知道最近出了哪些好的产品,每天抽一点时间看看ProductHunt
http://www.producthunt.com/ 或 DEMO8
http://www.demo8.com/ 或 最美应用
http://zuimeia.com/。
(五)
如果关注前沿科技资讯,看看36氪
http://www.36kr.com/、PingWest
http://www.pingwest.com/ 或 TechCrunch
http://techcrunch.com/、Reddit
https://www.reddit.com/
如果关注前沿技术,看看SmashingMagazine
http://www.smashingmagazine.com/、Mashable
http://mashable.com/、ReadWrite
http://readwrite.com/
如果关注用户体验设计,看看 站酷
http://www.zcool.com.cn/、优设
http://www.uisdc.com/、盒子UI
http://www.boxui.com/ 或 Dribbble
http://dribbble.com/、DesignerNews
https://www.designernews.co/、ThemeForest
http://themeforest.net/
如果想找设计灵感,去EnvatoMarket
http://market.envato.com/搜搜看。
(六)
如果想看看最近大拿都分享了哪些好的PPT,看看SlideShare
http://www.slideshare.net/、SpeakerDeck
https://speakerdeck.com/、Prezi
https://prezi.com/explore/staff-picks/
也可以去Slides
http://slides.com/制作自己酷酷的Slide。
(七)
如果时间管理比较紧,就订阅一下相关的日报周报吧!
(八)
如果偶尔很迷茫,不知道干什么,刷刷题吧:
基础:
Mega Project List 中文版
算法:
LeetCode Online Judge
设计:
Daily UI Design Challenge
(九)
如果工作觉得无处下手,可以从开源项目入手,比如:
-- Blog(WordPress、Octopress、Ghost)
-- Forum(Discuz!、Discourse、Flarum)
-- Wiki(DokuWiki、Gollum)
-- Groupware、CMS、eCommerce等。
(十)
如果想深入学习,不放看看规范标准定义,比如:
-- IETF的RFC
HTTP1.1协议
http://www.ietf.org/rfc/rfc2616.txt
-- W3C
HTML5标准
https://www.w3.org/TR/html5/
-- Java的JSR
Servlet 4.0规范
https://www.jcp.org/en/jsr/detail?id=369
或 维基百科
https://en.wikipedia.org/
《程序员必备技能》
(1)软技能
a> 英语(FQ):开发语言、官方文档、技术书籍、技术社区、Youtube视频等
a> 善用搜索引擎
a> 善于归纳总结(side project/code snippet)
a> 编码习惯、工作节奏效率
a> 时间管理(情绪管理)
a> 阅读好书、博客、源码:不要看速成书,比如:xx天精通yy
a> 社交互动(参与开源、尝试帮助别人)
a> 口头或书面交流(结伴讨论、参与代码评审)
a> 解决问题的能力(性能问题、内存问题、并发问题等):不要轻易发问!
a> 搞清楚工程还是科研
a> 保持好奇心(广泛<->专注):系统的学习 vs 边用边学
a> 业余时间应该提高自己的知识、技能、经验并实践自己学到的东西
a> 减少相似项目,掌握核心技术
a> 深入理解开发语言,比如Java的JVM,JavaScript(this、CommonJS、IIFE、Event & Event Delegation、Prototype Chain & Inheritance、Scope Chain & Closure)
a> 关注自己感兴趣的技术而不是流行的技术:一万小时定律虽然不假,但是99%的人不会成为专家
a> 是否有必要Full-stack?(前端、后端、测试、DBA、运维、移动应用、云服务、大数据等)
You can't know everything about everything.
扩展阅读:
16 Don'ts of Career Growth
7 Things I Learned That Made Me a Better Programmer
(2)技术技能
a> Linux基础
a> HTTP协议
a> 脚本语言、编译语言各会一门
a> 开发语言的基础(比如:多线程、I/O、网络、集合、泛型、注解等)
a> 关键领域
数据结构、算法、JVM/GC、JavaEE组件(JSP、Servlets等)
a> 开源框架
Web(Spring MVC)、IoC(Spring, CDI)、ORM(Hibernate、MyBatis)、容器(Tomcat)
a> 编程原则(Principles)
S.O.L.I.D
DRY (Don't Repeat Yourself)
OCP (Open Close Principle)
SoC (Separation of Concerns)
IoC (Inversion of Control)
CoC (Configuration over Convention)
http://rensanning.iteye.com/blog/2095194
a> 编程方法论(Methodologies)
MVC(Model-View-Controller)
OOP(Object-Oriented Programming)
AOP(Aspect-Oriented Programming)
FP(Functional Programming)
a> 设计模式(Patterns)
GoF Design Patterns
a> 软件架构(Software Architectures)
SOA (Service-Oriented Architecture)
MSA (Microservices Architecture)
N-Tier Architecture
Event-Driven Architecture
Plug-in Architecture
a> 项目管理(Project Management)
Waterfall、Agile (Scrum、XP、Lean等)、PMBOK
a> 编写clean代码、重构代码、优化代码、调试代码
a> 编写测试用例
a> 编写有效日志
a> 尝试独立搭建各种开发环境
a> 尝试独立实现各种数据结构、算法
a> 尝试独立实现一个完整的系统
a> Web开发需要熟练使用浏览器及常用插件
附A:获取知识的途径
书籍
-纸质(专业杂志)
-电子书(文档)
网络
-社区(论坛、官网、搜索引擎、社交网路)
-博客(公众号)
视频
-MOOC(Podcast、Youtube)
-录制
培训
-线上(MOOC、微课)
-线下(培训机构、企业内训、分享交流、面对面交流)
附B:日文技术网站
https://gunosy.com/
https://www.smartnews.com/
https://codezine.jp/
http://b.hatena.ne.jp/hotentry/it
https://qiita.com/
https://eventdots.jp/
http://dotinstall.com/
https://codeiq.jp/
http://www.ne.jp/asahi/hishidama/home/tech
http://d.hatena.ne.jp/nowokay/
http://rebuild.fm/
http://uxmilk.jp/
分享到:
相关推荐
随着人工智能技术的不断进步,特别是自然语言处理技术的快速发展,聊天机器人CHATGPT已经开始在很多领域得到应用。然而,有些人对于这种技术的发展感到担忧,尤其是低端程序员。他们担心,随着CHATGPT等人工智能技术...
作为一名程序员,如何丰富自己的知识,怎样提高自己的水平。作为一名程序员,需要不断丰富自己的知识库。
在你面试或者找工作的时候,工资是否能够要到自己满意的... 适用范围:你的工作经历能很好地反映出相关工作技能不断提高;你有一段可靠的工作记录表明你获得到不断的调动与提升;你最近所担任的职务足以体现你的优势。
编程艺术系列最初名为程序员面试题狂想曲,即为面试服务,后来随着加入与我一起创作的人越来越多,我们逐渐意识到,为面试服务不应该成为我们最终或最主要的目的,而应该注重提高广大初学者的编程能力,以及如何...
多核处理器日益吸引人们的注意,它带来了N多的变革,包括NUMA(Non-Uniform Memory AccessArchitecture)架构、专用运算处理器以及事务性内存(Transactional Memory)等,程序员需要怎样做才能充分利用和提高处理器...
我热爱编写代码并不断学习新知识,以提高自己的能力。在过去的几年里,我参与了许多项目,其中包括商业产品开发、网络安全防护、系统管理等方面。 我对于计算机科学充满兴趣,喜欢挑战难题并解决问题。我认为软件...
在本次采访中,李老师分享了他的职场经历、团队管理经验、程序员提升自己的方法和应具备的素养,以及谈了对面向对象和编程语言看法。李运华(博客),专注于Linux、MySQL、开源技术、系统分析、架构设计,有丰富的...
我想就我自己读过的技术书籍中挑选出来一些,按照学习的先后顺序,推荐给大家,特别是那些想不断提高自己技术水平的Java程序员们。此外,大家可以加入457036818交流群,互相分享一下关于JAVA方面的知识。 一、Java...
CodinGame是面向程序员的基于挑战的培训平台,其目的是让程序员通过解决世界上最具挑战性的问题,学习新概念并从最佳开发人员那里获得启发,从而不断提高自己的编码技能。 提案 在进行拟议的活动时,我在这里发布了...
公司的项目对自己没啥帮助,到底应该怎么提升?这些问题想必对很多人都是一个通病,包括我自己也是。所以我对于这些问题通常只能基于自己的眼界进行答复,也不知道这些东西对于他们是否有效。 某一天看见了一个有关...
今天是霍金的六周年忌日,是我第一篇博客的发布日。 作为初学者对于这些还是一知半解好多东西都无法掌握,只能够通过这种手段分享一些...我要走的路还很长我要不断学习更牛的技术,不断提升自己!!! 冲冲冲冲!!!!
相信在工作中不断学习,提高技能,为公司做出更大的贡献。 公司内部办公自动化系统,负责用户登录,权限管理模块的开发。 公司产品在线商城,负责产品展示,购物车,订单管理模块的开发。 公司官网,负责首页,产品列表,新闻...
招聘者可以快速了解应聘者的技能和经验,以及其适应工作和学习能力的优势 1. 精通Java和Python编程语言,熟悉JSP、Servlet、Spring、MyBatis等...6. 具备快速学习新技能和解决问题的能力,热衷于不断的学习和自我提升。
C++万能库头文件作为一种集中、高效、易用的头文件解决方案,为程序员提供了极大的便利。...同时,我们也希望程序员能够充分利用这些工具,不断提升自己的编程能力和代码质量,为软件行业的发展做出更大的贡献。
MySQL是广泛使用的关系型数据库管理系统,但在处理大量数据和高并发访问时,可能会遇到性能瓶颈和延迟问题。本文将详细介绍MySQL调优的具体...鼓励程序员积极学习和深入研究MySQL调优领域,不断提升自己的技术水平。
编程和设计技两者相得益彰,一名出色的程序员也是一名出色的设计师,他们懂得如何利用代码来解决问题或者软件设计,但是这些技能需要不断提升。这就要求你不断的保持设计理念,无论编程项目的大小,从失败中总结经验...
如果你对这本书感兴趣,说明你热爱你现在的工作,你对你正在做的事情是认真的,并且你想不断地提升自己。Steve在这本书里指出,普通程序员每年所读的技术书籍不足一本。仅仅只 英文版:《CodeComplete2》 中文版...
信息多美丽!设计优良的GUI也是这样。...如果你对这本书感兴趣,说明你热爱你现在的工作,你对你正在做的事情是认真的,并且你想不断地提升自己。Steve在这本书里指出,普通程序员每年所读的技术书籍不
主要为大家推荐了Java程序员到架构师自学书籍,帮助大家不断提高自己的专业水平,感兴趣的小伙伴们可以参考一下