640?wx_fmt=gif

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

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

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

640?wx_fmt=jpeg

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

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

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


640?wx_fmt=png

我的背景


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

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


640?wx_fmt=png

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


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

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

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

640?wx_fmt=jpeg

640?wx_fmt=png

觉悟、动机和职业转变


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

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

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

640?wx_fmt=jpeg


640?wx_fmt=png

freeCodeCamp和我的编程之旅的开始


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

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

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

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

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

640?wx_fmt=jpeg

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


640?wx_fmt=png

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


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

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

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

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

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

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

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

9:00:学习

12:00:午餐和家务

13:00:继续学习

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

21:00:再学习一会

22:00/23:00:睡觉

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

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

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

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

640?wx_fmt=jpeg

640?wx_fmt=png

学习经验


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

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

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

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

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

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

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

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

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

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

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

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


640?wx_fmt=png

我现在在做什么?


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

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


640?wx_fmt=png

最后的想法


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

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

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

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

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


荐号



640?wx_fmt=gif

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


 热 文 推 荐 

 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 "点个赞吧!"

640?wx_fmt=gif点击“阅读原文”,打开 CSDN App 阅读更贴心!

640?wx_fmt=png
Logo

20年前,《新程序员》创刊时,我们的心愿是全面关注程序员成长,中国将拥有新一代世界级的程序员。20年后的今天,我们有了新的使命:助力中国IT技术人成长,成就一亿技术人!

更多推荐