程序员

程序员的笔记本电脑

天大地大妈咪最大 提交于 2019-11-28 18:18:35
哪种笔记本电脑适合程序员呢 首先明确: 按需购买 ,适合的才是最好的。 需求分析:前端,后端,各种不同的工作需要等等… 电脑选择: 其实我们平时写一些简单的程序,只要安装配置好开发环境,无论什么电脑都是可以跑程序的,但是好的电脑可以有更高的效率。平时写及运行程序,需要大内存,现在内存需要16G起步吧;CPU最好别用低压的即带 U标识的,CPU越好,计算速度越快,线程数可以多一些,跑一些多线程的程序效果更好一些;固态必加,128G也就能放个系统,不太够;写程序除了机器学习这方面的显卡需求一般不是很强烈,看自己需要;接口也要注意,接口是否够用,是否需要什么外置等等,外接显示器应该也是必须的了;综上,再加上轻薄,散热,这些方面。个人推荐MacBook,Windows,Linux下程序员推荐ThinkPad X1 隐士(联想只推荐ThinkPad,美帝的联想更便宜一些,所以代购比国内直接买…);dell太贵了…dell的推荐xps系列;华为也可以考虑,华为matebook等等…突然发现游戏本配置比轻薄本暴力太多了,虽然又重又厚…游戏本推荐雷蛇灵刃,比较轻薄一些… 电脑配置看什么呢,这些配置自然是越高越好 CPU:架构,核心,线程数,功耗… 内存:一定要大,看cpu支持度,ddr4,最大频率… 固态硬盘:支持的接口,例如nvme .m2接口,读写速度… 显卡 屏幕 接口 续航 做工散热等等…

程序员接私活——兼职外包接单必备经验总结

丶灬走出姿态 提交于 2019-11-28 18:17:26
很多朋友提国外的upwork、freelancer等平台,实际如果你尝试过,即使英语挺溜,接国外的单子也是挺难的,主要是各国的实际购买力不一样,如果项目中有印度三哥参与竞标,价格方面你是没有什么竞争力的,并不是说美元兑换成人民币会有很多钱。 所以建议接单还是选国内的平台直接一点。 国内接单平台从传统的猪八戒、一品威客等威客网站到近几年垂直的猿急送、自客等众包平台,各有各的优势,如果你是非公司运作的个人或者团队,建议去垂直众包平台,因为威客都是公司在上面砸钱玩儿,不太容易接单。 国内的这类接私活高端平台: 猿急送( https://www.yuanjisong.com ) —— 起步最早,聚集需求方和工程师双方资源,可以相互进行筛选,工程师主动投递职位或者招聘方预约下单都可以。 自由职客 —— 主要是传统的saas类开发为主,java工程师比较多。 英选 (https://www.yingxuan.io) —— 目前浏览了一下网站,好像开始转做自营外包公司了。 人人开发 ——重新定义外包开发。 V2EX ——程序员灌水网站,不过有招聘频道,可以试试运气。 要静下心来,有耐心跟客户交流,实现从0到1的突破。 来源: CSDN 作者: github_master 链接: https://blog.csdn.net/xiyue001/article/details/93049429

程序员受益的编程名言,拿走不谢!

随声附和 提交于 2019-11-28 18:16:17
程序员编程需要经验,一些经验可以通过自己的实践来积累,而一些经验需要从他人那里学来。伟大的编程者就是一本优秀的编程知识手册,从他们那里,你可以学习到很多高屋建瓴的编程思想,让自己受益终身。今天我们就和大家分享一些著名的编程名言。 ◆ 用代码行数来评估程序的开发进度,就好比是拿重量来评估一个飞机的建造进度。 —— 比尔盖茨,前微软总裁 ◆ 高质量的代码就是对程序本身最好的注释。当你打算要添加注释时,问问自己:“我如何能改进编码以至于根本不需要添加注释?”改进你的代码,然后才是用注释使它更清楚。 ——SteveMcConnell, 软件工程师,作家 一个好的程序员应该是那种过单行线都要往两边看的人。 — Doug Linder, 系统管理员 任何一个工具,它的一个最重要的、同时也是最难以做到的方面就是对那些学习使用这个工具的人在使用习惯上的影响。如果这个工具是一种编程语言,那么,这种影响——不管我们是否喜欢——将是一种思考习惯上的影响。 — Edsger Dijkstra, 计算机科学家 抽象化是一种非常的不同于模糊化的东西 … 抽象的目的并不是为了模糊,而是为了创造出一种能让我们做到百分百精确的新语义。 — Edsger Dijkstra 除数学外,对本土语言的异常的精通会是一个计算机程序员的最宝贵的财富。 — Edsger Dijkstra C语言很容易让你犯错误;C+

一个十几年程序员给所有新老程序员的忠告

喜夏-厌秋 提交于 2019-11-28 18:11:36
吉日噶拉(在外企、上市公司工作过,自己也创业失败过,遇到过很多失败挫折,甚至露宿街头,但是最后还是挺过来了),是一个十几年的程序员了,里面介绍了他的相关经历,以及他的一下经验,无论是对刚入门的程序员,还是工作了十年八年的程序员都有一些经验值得借鉴学习。这里我也把《程序员你伤不起》这本书中的部分精华分享给大家,希望对大家有帮助! 值得注意的是书中的作者本身是一个小牛,没毕业前已经在大企业工作过很长时间了(.Net开发为主,C、java都有猎取),03年前就可以自己接企业项目了,但是后来还是遇到过很多挫折,主要是创业方面的惨痛经历。 通过本书,你会看到,即使你并不天赋异禀,成不了乔布斯和马云,但你依然可以有所成就,成为幸福的人。 (一)三年前的一个项目经验 主要讲的是作者帮公司拉了一个政府的项目,但是由于经验较少,谈的价格很低,还有很多细节刚开始没有谈到,后面相当于收了很少的钱,給政府干了一个比较完善的项目,这节的经验就是:程序员一般不应该直接和客户谈项目,应该让专业的人去谈,他能把10万的项目谈到50万或更多。 (二)2005年我的第一次软件创业,烧掉30万,两年时间打水漂 教训1.手上有技术,但是没有客户,没有产品,就靠着一腔创业的热血和对软件行业的爱好! 教训2.团队不稳定,各种经费、杂费、水电给、租房费、设备费,制度不够完善,成本没有控制好。 教训3.自己辛苦培养出来的技术人才

在中国程序员是青春饭吗?

旧街凉风 提交于 2019-11-28 18:11:03
今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: 二、一次又一次的伤害 某为很早就爆出来要裁员34岁以上员工的新闻,去年,真的裁了!!! 在某频道上,经常会看到这样的留言: 还有大佬为中年危机火上浇油的: 还有很多现身说法的: 突然想到一句话, 不能骂二十多岁的小伙子,因为他们随时可以辞职,要骂就骂30多岁的,他们成家了还有各种贷款。 程序员的35岁,真的如此不堪? 最关键的是,我也马上35了!!!! 三、猎头界的真相 咨询了几个圈内猎头好友,回答内容基本差不多,拿出一个比较有代表性的给大家看看: 如果你有做猎头的朋友,可以问问,就会知道我所言非虚!!! 不要再说人家贩卖焦虑了,不听,到时候会后悔的!!! 四、如何应对互联网行业的「中年危机」 我总结了目前程序员在35岁后所能走的路,大家可以提前做准备。 5.1 纯技术路线 根据舒伯的职业生涯阶段理论,31~44岁是安定期,程序员应该稳定于一项工作,发现适当的晋升通道,确立自己将来的保障。 结合35岁的门槛

学会 Debug

时光总嘲笑我的痴心妄想 提交于 2019-11-28 17:42:38
如何成为优秀程序员第 2/100 期分享 01 调试(Debug)是成为一个程序员的基石。 调试这个词第一个含义即是移除错误,但真正有意义的含义是,通过检查来观察程序的运行。一个不会调试的程序员等同于瞎子。 理想主义者认为设计、分析、复杂的理论或其他东西,是更基本的东西,他们不是现实的程序员。现实的程序员不会活在理想的世界里。即使你是完美的,你也需要与在你周围的主要软件公司或组织 (比如-GNU-) 的代码,和你同事写的代码打交道。这里面大部分的代码以及它们的文档是不完美的。如果不能看透代码的具体执行过程,最轻微的颠簸都会把你永远地抛出去。通常这种可见性只能从实验获得,也就是,调试。 02 调试是一件与程序运行相关的事情,而非与程序本身相关。 你从主要的软件公司购买一些产品,你通常不会看到(产品背后的)程序本身。但代码不遵循文档的情况(让你整台机器崩掉是一个常见又特殊的例子)或者文档没有说明的情况仍然会出现。更常见的是,你的程序出现了一个错误,当你检查你写的代码的时候,却不知道这个错误是怎么发生的。不可避免的,这意味着你做的一些假设并不对,或者一些你没有预料到的情况发生了。有时候,神奇的修改源代码的技巧可能会生效。当它无效时,你必须调试了。 为了获得一个程序执行过程的可见性,你必须能够执行代码并且从这个过程中观察到什么。有时候这是显而易见的,比如一些正在呈现在屏幕上的东西

Java设计模式之装饰模式趣谈

Deadly 提交于 2019-11-28 17:34:30
JVM:”上次给我招的工人不错啊!” oo程序员:”………..” JVM:”现在来我开的博物馆生意越来越好了,原来”舞台剧”的方式已经不能满足顾客的需求了” oo程序员:”………..” JVM:”我决定要换一种运营模式,把每个演播厅都租出去,让那些想表演节目的对象们来租演播厅和相关器械,这样我就能坐地收钱了!” oo程序员:”………..” JVM:”合伙干吧?怎么样?你三我七!” oo程序员:”………..” JVM:”四六?” oo程序员:”成交!先说说需求。” JVM:”首先有不同类型的演播厅和不同的装饰品/器械,每种物品都要付一定的租金,你要做的就是一件事,把总租金(演播厅+饰品/器械)算出来。” oo程序员:”把价格表给我!” 仔细一想也对,无论是演播厅还是装饰品,都需要描述(description)和cost(价格),写一个共同的父类无可厚非。 接着写下你设计的第一个类: 第二个: 第三个: 。。。。。 没有第三个了!这样写下去可是无穷无尽的!没办法,换个思路。 在演播厅里,无论什么装饰品都有可能出现,可以把演播厅+饰品看成一个整体,通过饰品相应的has和set来控制饰品,这样的话,设计出来的类如下: 这个看起来好多了,不用写大爆炸数量的类,虽然类写起来又臭(无数的has/set)又长(的确很长)。。。。。 但是有没有更好的方案? 答案当然是有的,不过我们必须先明确一下

“来我公司写爬虫吗?会坐牢的那种!”

主宰稳场 提交于 2019-11-28 17:31:10
欢迎关注“技术领导力”博客,每天早上8:30推送 “你交代一下,总共抓了多少数据,在哪些网站抓的,数据干什么用了?看看够在里面呆几年。。。”警察语气凝重地对张强说。 程序员张强(化名),回忆起这两天来的经历,仍心有余悸。 张强,在一家大数据风控公司担任爬虫工程师,每当看到网上的段子,爬虫学得好,监狱进得早,他总是莞尔一笑,心想:关我毛事啊,我只是个程序员,要坐牢也是老板去坐吧,我又没拿数据去卖钱。 时间回到9月,某一天的上午,张强和同事们像往常一样上班,突然公司里来了一群警察,要求所有人双手离开电脑、手机等设备,全部靠墙站立,工程师小哥哥、小姐姐们哪里见过这个架势,都懵了,只得照办。 警察查封了公司,带走了公司所有人,于是有了前面的问话。 01 我只是个写爬虫的,跟我有什么关系? 许多程序员都有这样的想法,技术是无罪的,我只是个打工的程序员,公司干违法的业务,跟我没关系。。。只能说,程序猿们真是图羊图森破了。 我们先来看几个真实的法院判决案例: 案例一: 数据拥有者有证据能够举证你的数据是抓取来的。如下,今日头条对起诉上海晟品法院宣判结果。 (图片文字来自中国判决文书网) 从文书描述来看,修改UA、修改device id、绕开网站访问频率控制这是写爬虫的基本,这些技术手法反而成了获罪的依据。 案例二:抓取用户社交数据,尤其是用户隐私相关。 (图片文字来自新浪网) 案例三

程序员必读的30本书籍

血红的双手。 提交于 2019-11-28 16:53:59
1. 《代码大全》(第二版) 作者: [美]史蒂夫·迈克康奈尔 第2版的《代码大全》是著名IT畅销书作者史蒂夫·迈克康奈尔11年前的经典著作的全新演绎:第2版不是第一版的简单修订增补,而是完全进行了重写;增加了很多与时俱进的内容。这也是一本完整的软件构建手册,涵盖了软件构建过程中的所有细节。它从软件质量和编程思想等方面论述了软件构建的各个问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。这本书中所论述的技术不仅填补了初级与高级编程技术之间的空白,而且也为程序员们提供了一个有关编程技巧的信息来源。这本书对经验丰富的程序员、技术带头人、自学的程序员及几乎不懂太多编程技巧的学生们都是大有裨益的。可以说,无论是什么背景的读者,阅读这本书都有助于在更短的时间内、更容易地写出更好的程序。 2. 《程序员修炼之道》 作者: Andrew Hunt /David Thomas 《程序员修炼之道》由一系列的独立的部分组成,涵盖的主题从个人责任、职业发展,直到用于使代码保持灵活、并且易于改编和复用的各种架构技术。利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。 3. 《计算机程序的构造和解释》 作者: Harold

一个老程序员这些年的心得体会

試著忘記壹切 提交于 2019-11-28 16:53:35
在这个世界上,程序员有数百万的人,也有很多名字,如:软件工程师,编码人,开发人员,码农等。总有一天他们会成为优秀的程序员,他们会熟悉如何用计算机语言来完成工作。但是,如何才能早早的迎来自己的康庄大道呢?下面是程序员老司机的心得体会供参考。 1.学无止境 就算有了10年以上的程序员经历,也得使劲地学习,因为计算机是充满创造力的领域,每天都会有很多的新事物出现,你需要跟上时代的步伐。你需要去了解新的程序语言,以及正在发展中的程序语言,还需要去阅读一些业内的新闻,并到一些热门的社区去参与在线的讨论,这样才能明白和了解整个软件开发的趋势。 2. 使用软件提高工作效率 借助于软件工具会让你的工作效率大大提高,比如程序员对比代码,如果不借助 Beyond Compare 4 对比工具,这简直是无法完成的工作。还有数据库管理备份工作,也离不开Navicat数据库管理工具的帮助。 3. 掌握多种语言 程序语言总是有其最适合的领域。当你面对需要解决的问题时,你需要找到一个最适合的语言来解决这些问题。花时间去探索其它程序语言,能让你的眼界变宽,只有被武装得更好,才会在工作中更胜一筹。 4. 别把自己框在单一的开发环境中。 每个程序员都有自己忠爱的工具和技术,如gedit或是Emacs等。使用什么样的工具本来无所谓,只要你能更好更快地达到你的目的。但是有一点是优秀程序员都应该了解的-