0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在没有正式培训的情况下学习编程

程序人生 来源:CSDN 作者:Linda Zhang 2021-10-08 10:22 次阅读

编程小白到完成第一款 Web 应用,我只用了 90 天,而且大多数时间都是在苦恼自己是否能成为开发人员,真正写代码的时候只有 30 天。

通过这场充满自我怀疑的旅程,我总结出了一些令人难忘的教训:

学习编程之路充满坎坷,直到有一天我做出了一项改变。

为什么使用无代码工具就是浪费时间?

为什么充满灵活性的产品往往最没有用?

何时学习编程最合理,以及如何在没有正式培训的情况下学习编程?

一连串的失败

当计算机科学流行的时候,当我认为学习编程可以帮助我成为一名项目经理的时候,当我想证明自己可以“成为技术人员”时,我曾尝试过编程,但都失败了。

每一次,我都在不知不觉中犯了同样的错误:我更喜欢编程的想法,而不是动手实践。所以,每当课程很无聊或遇到困难时,我都会放弃。放弃的次数太多了,部分原因是:我不是当程序员的料。

教训:除非实际尝试过,否则就不要否定自己。

如果真的想尝试编程,就找一个自己喜欢的项目。当你充满动力想要实现某个应用时,一切都会有所不同。

在(虚拟)教室中学习编程的风险太低,即使编写的功能现故障,我也不会担心。但是如果我的网站上的过滤器出现故障,我就会感到难为情,并在互联网的每个角落寻找修复方法。建立一个项目会强迫自己把代码写好。

我犯的另一个大错误是等待无代码工具来拯救我。

无代码工具的真相

围绕无代码或低代码的炒作有很多,以至于你会误以为学习编程不是必须的。

如果你想构建一个博客网站或登录页面,那自然没问题。你有很多选择,比如Typedream、Carrd、Webflow(难学,但百分百可定制)。你可以通过拖拽的方式制作精美的产品,从而产生一种“如今一切皆有可能”的错觉。

实际上,这些工具非常好用的原因就在于它们非常不灵活,只能创建静态网站。

如果你想制作一个简单的 Web 应用,例如根据用户的输入从数据库检索信息,那么不动手写代码几乎是不可能的。我前后尝试了5~6个糟糕的无代码原型,才意识到这种方式根本行不通。忽视产品开发的万有引力定律是很愚蠢的想法……

易用性与灵活性

每一款易于使用的产品背后,都有人付出了艰辛的工作。首先,需要深入理解特定用例,然后再下一番功夫尽可能简化常用操作。这意味着减少操作步骤,或者一目了然,通常两者兼而有之。

问题在于,可以简化的功能是有限的,屏幕空间就是天然的限制。看看下面这个导航栏:

如果不限制灵活性,就无法保证易用性。你需要在二者之间权衡利弊,这也解释了为什么无代码工具吹嘘的“完整的功能”和“完全自由的设计”根本无法实现。

Bubble是一款被人看好的产品,但结果却不尽如人意。尽管筹集了 1 亿美元的资金,却充斥着漏洞和劣质流量。说到这里,如果你在尝试无代码构建器的过程中发现了一些 bug,则请远离,永远不要回头。

继承功能和bug

选择无代码工具就相当于以低廉的成本雇佣了他们的产品开发团队。在此,我有两个重要的警告:

你也继承了他们的 bug 和响应能力:如果他们是二流团队,则你的产品最多只能达到二流质量;

你不仅需要支付费用,还要承担学习其系统规则和怪癖的时间。

灵活性从来都不是免费的。代价是易用性降低,以及更有可能出 bug,因为可能出错的地方更多。

尽管无代码工具有着种种看不见的缺陷,但在下列情况,这些工具仍然可以节省你的时间:

找到适合的解决方案(例如,Soft:出色的可视化前端;Retool:可用于内部工具的出色前端);

学习速度很快,而且还提供了能够满足最低可行产品的功能。

然而,如果想获得面向客户的 Web 应用的全面控制权,最大的捷径就是挑战最大的难题:学习编程。

编程才是捷径

我以为学习编程需要花费几年的时间,我以为我会无聊死,而且还无法获得任何好处。然而,事实证明,编写自己的项目情况完全不同。一旦掌握基础知识,编写程序的速度就会很快,而且利用基础知识就能完成很多功能。

整体的感受:

不能马虎:思考马虎的想法很容易,但记录马虎的想法很难,而将马虎的想法编写成代码则更难。

深刻地体会到了工程师的不易。

通过一行又一行的代码构建产品能产生巨大的满足感。

摆脱无代码的约束。

学习如何使用无代码工具是创业需要付出的代价,但学习如何编程是对自己的投资。如果你拥有一些想要构建的想法,并计划一遍又一遍地使用学习到的编程技术,那么投资回报率是巨大的。

为了寻找合适的无代码工具,我浪费了大量时间,最后反而是自学编程救了我。如果你也想拥有灵活性和易用性,那么就自己动手吧。

最后是一些学习编程的注意事项:

选择一种流行的编程语言,最好与英语很接近。我选择了 Python Django,因为简单易学,还拥有一个庞大的在线社区,这很重要,因为对于你遇到的问题,网上都提供了常用的解决方案。

编写代码=主要是修改别人的代码。我所有的代码都受到 Stack Overflow、JSFiddle 和 YouTube 上的解决方案的启发。

如果你不知道如何修改别人的代码,请参加短期课程,但不要在理论上停留太久,只有能够应用到自己的项目中的概念才能真正发挥作用。

在学习教程时,请确保下载最新的软件包。一些优秀的视频很老,而且使用的是过时的软件包,编写代码后升级可能会破坏功能。

95%的时间都会浪费在5% 的问题上,这 5% 的问题会让你欲哭无泪,但不要害怕,告诉自己这样的问题只有 5%!你可以在这些问题上发挥创造力。

如有疑问,请尽管尝试!尝试每一种变化;随着时间的推移,你的预感会变得敏锐起来。

最后,我想向 Python Django 的开发人员致敬!

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Web
    Web
    +关注

    关注

    2

    文章

    1263

    浏览量

    69479
  • 编程
    +关注

    关注

    88

    文章

    3616

    浏览量

    93738
  • 代码
    +关注

    关注

    30

    文章

    4788

    浏览量

    68616

原文标题:我只用了 30 天的时间就学会了编程

文章出处:【微信号:coder_life,微信公众号:程序人生】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    在VDD1没有供电的情况下,VDD2正常供电的情况下,AMC1200的输出应该是什么状态?

    请教一下,在前端VDD1没有供电的情况下,VDD2正常供电的情况下,AMC1200的输出状态为什么P端是3.8V ,N端是1.2V ,每一次都是这样子, 请问,在VDD1没有供电的
    发表于 12-17 07:37

    继电器测试的培训学习资源有哪些推荐?

    继电器是电气控制设备中常见的一种元件,用于实现电路的开关控制和保护功能。对于从事电气相关工作的人员来说,掌握继电器的测试技能是非常重要的。以下是一些推荐的继电器测试培训学习资源: 在线课程:许多
    发表于 12-04 16:35

    请问ADS1292R如何在MCU休眠的情况下通过脱落检测唤醒MCU?

    请问ADS1292R如何在MCU休眠的情况下通过脱落检测唤醒MCU?
    发表于 11-28 08:03

    AIC3106如何在不改变BCLK和LRCLK的情况下,能够调好?

    你好,请问:AIC3106现在配置为从设备、DAC采样率为16K、数据宽度为32位。现在主设备给的BCLK是2048K,LRCLK为16K,播放现在有问题,如何在不改变BCLK和LRCLK的情况下,能够调好?
    发表于 10-28 07:06

    PCM1795如何在通电的情况下切换PCM模式和DSD模式?

    Ti工程师您好,项目上有用到PCM1795这枚芯片,因为它具有DSD解码与PCM解码功能,之前没有使用过类似产品 有两个问题请教下: 1、用MCU初始化PCM1795让它能正常工作,至少需要配置哪几个相关寄存器 2、如何在通电的情况
    发表于 09-29 06:00

    ESP8266如何在没有SNTP的情况下写入当前的系统时间?

    当我开发SSL应用程序时,我首先需要SNTP。我们希望通过添加外部RTC模块来记录有效时间,从而避免每次使用SSL时先使用SNTP。但是,我们没有找到设置系统时间的接口。如何在没有SNTP的
    发表于 07-09 07:19

    想在RainMaker的例程加上BLE本地控制,如何在没有wifi的情况下也能控制设备?

    没有网络时,ESP RainMaker 可以通过wifi进行本地控制. 现在我想在RainMaker 的例程加上BLE本地控制,在没有wifi的情况下也能控制设备。 请指教一下该如何做?
    发表于 06-26 08:05

    何在UDP的情况下监听自己通信是否中断?

    请教大佬一个问题。 我如何在UDP的情况下监听自己通信是否中断? 不知道有没有什么可以参考的?
    发表于 06-24 06:04

    谷景揭秘如何在色环电感封装尺寸不变的情况下升级电感性能

    谷景揭秘如何在色环电感封装尺寸不变的情况下升级电感性能 编辑:谷景电子 色环电感作为电子电路中的一种特别重要的电感元件,它对于电路运行的稳定性有着重要影响。色环电感的种类很多,不同的电路需求对色环
    的头像 发表于 06-23 09:45 400次阅读

    能否在没有中断的情况下使用SPI?

    我们能否在没有中断的情况下使用 SPI? 所有示例仅显示了中断情况。 是否有示例代码? 请支持 !
    发表于 05-22 08:18

    机器学习如何助力芯片设计

    1959年,计算机游戏和人工智能的先驱亚瑟·塞缪尔(Arthur Samuel)将ML定义为“使计算机能够在没有明确编程情况下学习的研究领域”。
    的头像 发表于 03-29 10:03 517次阅读

    何在不更换固件的情况下控制cyusb3014在USB 2.0和USB 3.0模式下的读写速度?

    您好,我想通过上层机测试cyusb3014在 USB 2.0和 USB 3.0模式下的读写速度。 如何在不更换固件的情况下控制是通过上位机以 USB 2.0 还是 USB 3.0 速度连接? 谢谢。
    发表于 02-27 06:24

    何在幅度频率不变的情况下将正弦波变为方波?

    何在幅度频率不变的情况下将正弦波变为方波? 方波是一种特殊形式的波形,它的波形在周期内由两个值之间的突然跳变组成,通常是由高电平和低电平组成。与之相反,正弦波是一种平滑连续的波形,其幅度变化是沿着
    的头像 发表于 02-06 15:51 4746次阅读

    没有触摸的情况下寄生电容怎么计算Cp的值?

    如果在没有触摸的情况,CS=Cp,用公式计算的,raw count取值满量程的85%的情况下计算,是否可行 or 在不触摸的情况下,怎么计算Cp的值?
    发表于 02-01 06:36

    何在没有HAL的情况下使用SEGGER eMusb-Device吗?

    我很喜欢 SEGGER eMusb-Device,因为它的实现方式非常全面。 但是,我想退出 HAL,我观察到 SEGGER eMusb-Device 严重依赖它。 我有办法在没有 HAL 的情况下
    发表于 01-25 08:31