180天制作180个网站的艺术专业女生:我学习编程的第一年

简介: 去年的4月1日,我开始了一个项目,这个项目改变了我的人生。听起来这像是陈词滥调,但是这是真的。去年的4月1日是我的180天180网站的第一天,当时我非常非常紧张。我不知道如何编写代码。我的电脑坏了,我只好用一个借来的笔记本电脑。我开始了这个疯狂的学习挑战,如果我失败了,每个人都能看到。我真是太疯狂了。我记得当时自己在想如果这个项目失败了,我可以声称它是一个煞费苦心的愚人节笑话。

image.png

去年的4月1日,我开始了一个项目,这个项目改变了我的人生。听起来这像是陈词滥调,但是这是真的。去年的4月1日是我的180天180网站的第一天,当时我非常非常紧张。我不知道如何编写代码。我的电脑坏了,我只好用一个借来的笔记本电脑。我开始了这个疯狂的学习挑战,如果我失败了,每个人都能看到。我真是太疯狂了。我记得当时自己在想如果这个项目失败了,我可以声称它是一个煞费苦心的愚人节笑话。


不过同时我也是非常非常兴奋。我终于开始学习创造我想做的东西了!我很久以前就想学习编写代码了,但是那些书籍和网上的教程看起来太枯燥了。我决定通过自己做网站的方式自学。当我在第一天做完我的第一个网站的时候,我相当地自豪。我知道前面有很多艰难困苦在等着我,但是我已经克服了对于众多项目而言的最大障碍:开工。


去年我在制作180个网站和YumHacker时更好地了解了自身。最大的信息是我在捣鼓数据方面很有一手。我也许算不上一个数字女孩,但我正在朝这方面努力。处理和展示数据是编程工作中最令我兴奋的部分。我也接连不断地收到大家对我所做的事情的反馈,太棒了!我很享受根据大家的意见改进自己作品的过程。


最重要的是,我克服了对被评判的恐惧。不管你是在制作艺术品,自学一些新东西,还是开创一门新生意,你必定会遇到很多负能量。当你在做一些疯狂的事情的时候,人们会说一些非常奇怪或者刻薄的话。这些评论本身没有太大的危害,但是如果你让它们加剧了自己的疑虑的话,那它们可就很危险了。和你自己的疑虑作战可是相当艰难的。


image.png

在我的第一篇博客中,我写道:

我不确定这个项目最后结果如何,但是我觉得它会很有趣!

有时候我都不相信自己能学到这么多东西,有时候我不记得学习编码前的生活。过去的一年是具有挑战性的一年、令人振奋的一年、值得眷恋的一年、势不可挡的一年、令人沮丧的一年!过去的一年真是太棒了!这是我人生中最好的一年。虽然有少数人怀疑我是个骗子,我告诉别人我是一个软件工程师的时候听起来有些奇怪,但是我无法想象自己去做软件之外的事情了。


关于作者

Jennifer Dewalt毕业于艺术专业,她当初选择艺术专业,是为了探索人们是如何向世界展示自己的,她尝试通过绘画、雕塑来捕捉社会画面。但是后来她意识到互联网改变了人们沟通交流的方式,因此她希望自己能够创造沟通的渠道,因而决心学习编程。

她给自己的学习计划制定了严格的规则:


  • 在未来连续的180天内,每天要构建出一个不同的网站
  • 每天写一篇博客,记录学习和创造的过程
  • 每个网站都是开源的,放在GitHub上


她认为学习编程最好的办法就是实作。当遇到问题时,会上 Stack Overflow 求助。如果需要大的“跳跃”,比如使用一门新语言、新框架,她将借助教程。


最初,Jennifer的网站十分简单,只是HTML加上少量的CSS和一两行JavaScript。后来开始玩复杂的CSS动画,第37天的时候,开始研究canvas。第69天的时候,做了第一个Rails网站。第119天的时候,做了一个todo工具,偏后端的应用。第179天的时候,用NodeJS做了一个通讯应用


完成180天180个网站项目后,Jennifer决定继续她的编程之旅。她花了80天的时间开发了YumHacker 项目,这是一个分享美食的社交网络平台,后端基于 Rails,前端基于 Backbone.js。之后不断完善这个项目。yumhacker的GitHub仓库

相关文章
|
Web App开发 自然语言处理 Java
Elasticsearch简介及安装
Elasticsearch简介及安装
526 0
|
网络协议 Unix Linux
CentOS7下利用FRR路由套件实现OSPF动态路由组网
CentOS7下利用FRR路由套件实现OSPF动态路由组网
1894 0
CentOS7下利用FRR路由套件实现OSPF动态路由组网
“Could not find suitable distribution for Requirement.parse(‘XXXX‘)”的问题
“Could not find suitable distribution for Requirement.parse(‘XXXX‘)”的问题
639 0
|
11月前
|
关系型数据库 API 数据库
Python流行orm框架对比
Python中有多个流行的ORM框架,如SQLAlchemy、Django ORM、Peewee、Tortoise ORM、Pony ORM、SQLModel和GINO。每个框架各有特点,适用于不同的项目需求。SQLAlchemy功能强大且灵活,适合复杂项目;Django ORM与Django框架无缝集成,易用性强;Peewee轻量级且简单,适合小型项目;Tortoise ORM专为异步框架设计;Pony ORM查询语法直观;SQLModel结合Pydantic,适合FastAPI;GINO则适合异步环境开发。初学者推荐使用Django ORM或Peewee,因其易学易用。
1568 4
|
人工智能 弹性计算 搜索推荐
打造个性化的微信公众号AI小助手:从人设到工作流程
在数字化时代,一个有个性且功能强大的AI小助手能显著提升用户体验。本文档指导如何在微信公众号上设置AI小助手“小智”,涵盖其人设、功能规划及工作流程设计,旨在打造一个既智能又具吸引力的AI伙伴。
1085 0
|
JavaScript 前端开发 安全
跨域解决方案有哪些?
本文介绍了多种跨域解决方案,包括JSONP、CORS、postMessage、WebSocket、document.domain+iframe、window.name、location.hash、Node.js代理、Nginx代理和CORS Anywhere。每种方法都有其适用场景和优缺点,如JSONP简单但只支持GET请求,CORS安全但兼容性稍差,WebSocket适用于实时通信但需服务器支持。开发者可根据具体需求选择合适的跨域方案。
437 3
跨域解决方案有哪些?
|
安全 应用服务中间件 网络安全
49.3k star,本地 SSL 证书生成神器,轻松解决 HTTPS 配置痛点
mkcert是一款由Filippo Valsorda开发的免费开源工具,专为生成受信任的本地SSL/TLS证书而设计。它通过简单的命令自动生成并安装本地信任的证书,使本地环境中的HTTPS配置变得轻松无比。mkcert支持多个操作系统,已获得49.2K的GitHub Star,成为开发者首选的本地SSL工具。
665 10
|
负载均衡 算法 应用服务中间件
Nginx代理模式
【8月更文挑战第15天】本文介绍了代理模式中的正向代理、反向代理与透明代理,并详细探讨了Nginx负载均衡策略。在Nginx负载均衡中,包括简单的轮询方法、考虑服务器性能的加权轮询法、确保同一IP地址会话一致性的源地址哈希法、依据连接数动态分配任务的最小连接数法,以及更智能的Fair算法和URL哈希方法。这些方法不仅提升了负载均衡的效率,还解决了特定场景下的问题,如会话保持等。
230 1
Nginx代理模式
|
存储 分布式计算 算法
小小比特,改变世界——经典比特和量子比特的故事
小小比特,改变世界——经典比特和量子比特的故事
337 5