【CSDN编者按】前几天,知乎上一个“程序猿真的觉得写代码比女朋友重要吗?”的话题引来了众多吃瓜爱好者的围观,高达 300+ 的作答表示了程序员们的慎重而庄严的态度。有人说,程序猿的世界很纯粹,纯粹到只有代码无需其他;有人说,程序猿的女朋友自己 New 一个就行,何必单恋一枝花?......刨去个别酸葡萄的心理,鱼与熊掌如何兼得的难题想必也是耗尽了程序猿的心力了!但是,本文作者的经历或许可以让程序猿们柳岸花明。

亘古不变的定律是,面对家庭地位和工作分工的选择,女性相比男同胞们更容易处于一种较为尴尬的境地——这在程序员中同样如此:前者往往还担负着母亲的角色,需要在工作和家庭中不断取舍。

本文的作者就从数十年的行政管理工作中脱离,转身投入了全新而又陌生的开发领地。其中,她还同时兼顾着两个不足 20 个月的孩子、家庭起居的方方面面,各种心酸无奈简直不足为外人道也。但是,在程序猿丈夫的建议支持下,她一步步走上了前端开发的角色,并且成为了一名 Web 开发的自由职业者,还成功构建了两个商业网站。双剑合璧,莫不如是。

作者 | Phoebe Voong-Fadel
译者 | 梁蕊
责编 | 郭芮
出品 | CSDN(ID:CSDNnews)

我多次想过写写我个人的编程之旅,但是从来没有勇气去这样做。我对此不屑一顾,心想:“为什么会有人想读这个呢”?

开发人员来自各行各业。然而,我想谈谈关于学习,与年幼的孩子一起编程,以及在养育孩子和工作之间进行平衡的挑战和学习。

我的背景

我并不是Web开发人员的传统候选人——我走了人文路线,并且我没有任何的计算机科学与技术的背景。我投身于高等教育,并且十多年来,我在行政管理方面步步高升。我喜欢我的工作,但是并没有因为职业的选择而感到满足。

大约在七年前,在寻找新的职业道路时,我征求了一些意见,以希望能够找到一份技术性更强的工作。因此,我开始学习Web开发的基础知识,比如HTML和CSS。我第一次尝试写代码是三心二意的,恐惧是主要的原因。我担心过渡会花太长的时间,也因为即将到来的婚礼而感到心烦意乱。

六年后:一个丈夫、一套公寓、两个两岁以下的孩子!

我在2015年1月生了第一个孩子。简而言之,对我的生活体系来说,有了我的儿子是一件令人震惊的事并且完全颠覆了我的世界。对我来说睡眠被剥夺就像是酷刑,并且我的母乳喂养有困难。前六个月我一直处于像僵尸一样的状态。

当一切开始安定下来之后,我发现我又怀孕了。这是我回来工作的第一周!我女儿出生在2016年9月。

......现在我有两个不到20个月大的孩子。

觉悟、动机和职业转变

到2017年中旬,34岁的我决定离职。这样做有两个原因:对我来说,工作和照顾孩子在经济方面不再可行;此外,和一个经常在外工作的丈夫一起照顾两个年幼的孩子,很难做到全职工作。

但是我七年前的想法从未消失。我可以等到孩子们长大一些,然后开始找一些兼职,或者最终在科技行业找到一份工作。我的丈夫一直在科技行业工作,他给了我相同的建议。

学习基础知识:HTML、CSS和JavaScript——这三种技能的组合让我知道我可以成为一个前端工程师。

freeCodeCamp和我的编程之旅的开始

我研究了我应该遵循哪个在线学习平台。我读过关于freeCodeCamp相关的一些东西,我也喜欢它的课程结构——它适合任何没有编程经验的人。

当我开始编写时,看到我的代码呈现在预览窗格中时是让我非常满意的!我对自己说:“这也不是那么糟糕,我可以做到的”。

我还记得我第一次被困住的时候,那是一个<div>标签。我在练习说明中读到“div元素是所有HTML元素中最常用的元素”。我不明白为什么要在<div>里面使用<div>?我丈夫就跟我说“Google是你的朋友”,所以,我就开始搜索研究<div>究竟是什么。

事实上这并不容易。我已经13年没有学习了,而且我还进入了一个与之前所学知识相差甚远的学科领域。在早期,我有过很多的自我怀疑,害怕我不能学会编程。但随着时间的流逝,学习编程的过程逐渐变得容易了,我也有了动力努力工作,坚持不懈。

虽然课程变得越来越难,但我逐渐习惯了这种不安的感觉。

普通的一晚! 照例哄我的女儿睡觉和做家务。

学习如何与孩子一起编程的挑战

为人父母是一项永远不能停止的“工作”,这是我扮演过的要求最高的角色!我必须成为最好的厨师、艺人、管家、歌手、护士、养育者、跑腿者、老师和讲故事的人......这个名单还可以继续列下去。即使我的孩子睡着了,我也随时待命,准备放下一切来满足他们的需求。

考虑到这一点,挤出时间编程是我最大的挑战。我丈夫总是在工作,一周的大部分时间我都在照顾两个蹒跚学步的孩子。我已经精疲力尽,我只能在他们睡着之后写代码。

典型的带孩子的一天通常从早上 6 点开始,一直持续到晚上 8 点。大概要到晚上 9 点,我才能坐下来,打开笔记本电脑开始编程。尽管我很累,但当我开始编写代码时,我感到精力充沛。

有些晚上比其他的时候要好一点。根据孩子们的需要,我可以在睡觉前的 30 分钟到 3 个小时之间的任何时间学习。而很多时候,我根本无法学习。

但是我有耐心,情况确实好转了。

最终,编码成为了我日常的一部分。当我的孩子在托儿所的时候,我会进行更多的学习。在我“空闲”的日子里,我是这样安排我的一天的:

6:00:吃早饭,和孩子们在一起

9:00:学习

12:00:午餐和家务

13:00:继续学习

15:00:做饭,做一些家务,接孩子

21:00:再学习一会

22:00/23:00:睡觉

当你有了孩子的时候,疾病是不可避免的。但是没有人告诉我婴儿生病的概率有多高!这对我的编码之旅是一个巨大的干扰。这里有一个例子。

在 2017 年冬天,我的女儿得了流感,我的儿子不久之后也得了流感。他们花了两个星期才康复过来。而当我终于放松下来,不再处于“生存模式”的时候,我和我丈夫生病了。我有一个多月的时间无法学习。

我学会了为这样的干扰做好准备,不让它对我的积极性产生冲击。我会试着尽快回到学习状态中。我从短时间的编程开始,一旦我重新回到流程中就开始构建它。

我也尽量按规律作息。这不仅对我很重要,对我的孩子也很重要。例如,这意味着必须在解决一项练习的过程中停止学习,然后去接我的孩子。不把编程工作安排到凌晨,这样我就可以为第二天照顾我的孩子做好准备。、

学习经验

最近有人问我在编码过程中学到的最重要的东西是什么,我列出了我的顶级秘诀。其中一些是针对父母的,但我相信它们对任何不是父母的人仍然适用!

1、每个人都可以学习编程。无论你的背景是什么,如果你有兴趣和动力,你都可以学习编程。网上有很多资源可以满足各种知识水平的学习者。你只需要使用计算机并花费时间学习。实践出真知!

2、编程每一天。这是我从 freeCodeCamp 的 Quincy 那里拿到的一个小窍门,但是它非常重要!我尽力坚持这一点,但如果你不能一下子做到,也不要自责。儿童无法预测的特性意味着这对我而言并不总是可行的,我试图使我的编码生活适应我的责任和承诺,知道如何灵活的学习才是关键。

3、不要让自己疲惫不堪。尽量抽时间放松一下,放下学习。有时候我会尝试去健身房。

4、多任务处理。我把所有的家务劳动分配到我的孩子在托儿所的时候。我会在洗衣服的时候编程,打扫卫生或者做饭的时候我会在 YouTube 上观看与编码相关的视频或者收听播客。我也会一次做很多饭并放进冰箱以在周末腾出更多的时间。

5、学会管理你的恐惧。不要让你的负面情绪毁灭你。在编程过程的某些时刻,你会感到自我怀疑。每个人都有自己的应对机制,就我个人而言,我学习和练习的越多,我就越有信心。

6、学会如何搜索。这是需要掌握的重要技能。一开始我发现很难找到正确的关键词来帮助我完成任务。再来一次,这就是实践,你在网上搜索的越多,你就会变得越好。记得给有用的网站添加书签。

7、不要被压倒。考虑你的编程之旅会把你带到哪里是件好事,但是不要被它压倒。把你的知识视作钟形曲线,在图形中间达到峰值时,你将非常了解两种编程语言或者框架。随着曲线的降低,你对其他科目的了解将不会那么广泛。了解新的技术和趋势总是件好事,但是这并不意味着你必须成为专家。

8、建立作品集。你还可以建立一个好的作品集而不需要“工作”经验,我的作品集包含来自 freeCodeCamp 的项目。你甚至不需要设置自己的环境,也可以使用 CodePen 等在线资源来演示你的代码。

9、版本控制。学习如何使用 Git 和 GitHub。当你开始做更复杂的项目时,你将需要使用 IDE(集成开发环境)。我使用 Atom 但是不过于关注这个工具。你只需选择一个工具并善于使用它,开始创建存储库并将代码提交到 GitHub。

10、代码审查。找人帮助你对项目进行代码审查非常重要。我一开始很难做到这一点,但最终它将引导你成为更好的程序员。通过审查其他人的代码,你将同样学到很多东西。

11、永远不要停止学习。人们问我的另一件事是,我什么时候停止学习——我的回答是永远不会。Web 开发有很多创新,我总想知道最新的更新和“必备技能”。

我现在在做什么?

在大约一年的时间里,我一直在学习并且编程。我已经完成了 freeCodeCamp 中六个证书中的三个。

我现在是一名 Web 开发的自由职业者,我已经构建了两个商业网站。一个给客户,一个是我的作品。我也继续在 freeCodeCamp 和其他例如 Udemy 的平台中学习。

最后的想法

有些人问我为什么要在有孩子的时候改变职业,而不是这之前我有更多时间的时候。具有讽刺意味的是:我并没有明白或意识到时间有多重要。我也很自满,害怕在孩子面前冒险。我希望成为我的孩子的一个榜样,并拥有一份我热爱的事业。

当我变成父母时,我觉得我唯一的目的就是做一名母亲,在这个过程中我失去了我自己的特性。而当我再次开始学习时,我得到了一个养育孩子之外的目的。我不必只能是一位程序员或者一位母亲,我可以两者都是。

原文链接:https://medium.freecodecamp.org/how-i-went-from-stay-at-home-mum-to-front-end-web-developer-39724046692a

作者简介:Phoebe Voong-Fadel,自学成才的前端 Web 开发人员,两个孩子的妈妈。我喜欢编码、做饭和烘烤。

本文为 CSDN 翻译,如需转载,请注明来源出处。


荐号

区块链大本营,是区块链开发者的基地,从这里出发,让区块链回归技术与应用的本质!

 热 文 推 荐 

☞ Google 强迫微软弃用 Edge 内核?

☞ 开源面临生死存亡之际!

☞ 如何“攻破”大众点评的文字加密防线?

☞ 刚发布!Python 一二线城市月薪 15K 起!12 月再夺语言榜首

☞ 为什么都瞧不起培训班出来的程序员?

☞ 用对这30种秘密武器, 你也能成为区块链高手!

☞ MIT新福利,2019人工智能公开课上线啦!

☞ “车联网”最强科普!据说它是未来五年5G兴衰的晴雨表?

print_r('点个赞吧!');
var_dump('点个赞吧!');
NSLog(@"点个赞吧!");
System.out.println("点个赞吧!");
console.log("点个赞吧!");
print("点个赞吧!");
printf("点个赞吧!\n");
cout << "点个赞吧!" << endl;
Console.WriteLine("点个赞吧!");
fmt.Println("点个赞吧!");
Response.Write("点个赞吧!");
alert("点个赞吧!")
echo "点个赞吧!"

点击“阅读原文”,打开 CSDN App 阅读更贴心!

谁说程序员的老婆和代码不可兼得?!相关推荐

  1. 宅男程序员给老婆的计算机课程

    声明: Technorati 标记: IT生活 本文档来自:http://developer.51cto.com/art/201203/321936.htm 宅男程序员给老婆的计算机课程之0:认清本质 ...

  2. 宅男程序员给老婆的计算机课程之8:控制器

    设计模式再"高级"一点,便是所谓的"框架"了. 从事Web开发,一般都会接触到MVC框架这个概念. M:也就是Model,直接跟网站数据库相关. V:也就是Vi ...

  3. 宅男程序员给老婆的计算机课程之5:设计模式

    设计模式,应该是很多ED心目中牛B的编程方式. 上回说到ED的好书POEE,实际上便是一本专门讲企业开发中使用的设计模式中的书. 设计模式,并不多,基本上看完GoF的这边<Design Patt ...

  4. 宅男程序员给老婆的计算机课程之6:模版引擎

    [51CTO独家特稿]设计模式再"高级"一点,便是所谓的"框架"了. 从事Web开发,一般都会接触到MVC框架这个概念. M:也就是Model,直接跟网站数据库 ...

  5. 转自51CTO的帖子——宅男程序员给老婆的计算机课程

    在51CTO上闲逛的时候,看了这个系列的帖子.感觉不错,特转发于此,留做纪念. 原文链接: 宅男程序员给老婆的计算机课程之0:认清本质 宅男程序员给老婆的计算机课程之1:认清实际 宅男程序员给老婆的计 ...

  6. 宅男程序员给老婆的计算机课程之10:做,就对了!

    [51CTO独家特稿]学以致用,很多时候,学习一样东西最好需要能够在实际中应用起来. 所以我在第2课"怎么看待牛人"中强调的必须"看代码 + 写代码". 不过我 ...

  7. java程序员可以只用windos吗_程序员要写多少代码 才能开发一个window操作系统

    开发一个window操作系统需要程序员写多少行代码呢? 微软的Windows系统是伴随我们已久的老朋友了,大多数人都是一代一代Windows的用上来,老用户几乎都形成一个共识,就是微软的系统有一代会很 ...

  8. python表白代码如何运行-程序员如何实现表白代码

    程序员实现表白代码的方法:首先打开代码编辑器:然后输入告白代码[while (life < end) {love++;},var you = function from_future_impor ...

  9. 宅男程序员给老婆的计算机课程之9:数据模型

    这次来讲MVC中最后的M. Model,几乎可以说是网页应用的核心. 之前课程提到过网页应用是由数据库驱动,而在很多场景,数据库 = M : M = 数据库. 所谓的ORM: object relat ...

最新文章

  1. Datawhale组队学习 Task02:顺序表和链表(2天)
  2. 用JQuery模仿淘宝的图片显示效果
  3. 在mac操作系统下,Intellij IDEA默认jdk版本的修改
  4. 2013年35真棒恭贺新禧 - 壁纸
  5. Design Pattern in Java[Challenge 2.1]
  6. 怎么设计一个好的数据库
  7. Python 包管理
  8. php分割文本读入数组,PHP fgets按行读取字符串和explode分割字符串为数组
  9. 测试需求分析第二部分
  10. xmldocument的使用
  11. nodejs动态加载代码
  12. dtcms分页含多个参数,多个参数分页
  13. 邮政出面打假?中国邮政是否考虑搭建其品牌官网?
  14. 服务器电脑怎么样装系统,如何给服务器安装系统,是不是和PC机一样安装?
  15. [4G5G专题-23]:架构-5G无线接入内部网元架构与空口协议功能切分
  16. php或js判断网站访问者来自手机或者pc机
  17. 计算机网络知识全面讲解:理解网络协议
  18. 深入浅出 proxy 系列之一:Proxy 是什么
  19. 让你的python说话
  20. 火车票查询系统(一)——利用python实现监控12306余票查询

热门文章

  1. windows下pclpy安装失败的解决方法——本地安装
  2. linux 一些常规操作合集 (cat grep awk chmod vim ..)
  3. python os write_Python os.write() 方法
  4. dicom格式怎么转换_qsv怎么转换mp4格式?qsv转mp4的首选工具
  5. mac安装gcc10
  6. 碳酸钡颗粒行业调研报告 - 市场现状分析与发展前景预测
  7. 教你 7 步快速构建 GitLab 持续集成环境
  8. 从入门到入土:Python爬虫学习|实例练手|爬取百度产品列表|Xpath定位标签爬取|代码注释详解
  9. 柯洁:我受够了AI围棋;联发科校园招聘,应届生年薪约45万元;Chrome 100发布 | 极客头条...
  10. 80%程序员不知道的职场秘诀,升职加薪不是梦