自学编程到底多难?能不能找到工作?阿里技术专家这样回答……

article/2025/8/25 14:18:05

最近逛知乎,看到一个问题,有感而发,原问题如下:

想自学编程恳请大神推荐app网站!?

数学不好,再从小学数学开始重修

想学习编程,请问各位大神

1、编程要求哪方面数学知识?

2、有编程英语学习推荐吗?

3、请大神推荐锻炼逻辑思维尤其是编程思维的app和网站、书籍,学习群。

最后恳请大神推荐自学编程的app、网站、交流群等资源渠道。

谢谢知乎IT大神们~

于是我想到上大学时候的我,那时候如果有知乎,我也许会问同样的问题!

现在一路走来,我就向10年前的我来分享一下这十年的一些感悟吧!

计算机里面有一个非常经典的问题,叫boot,也就是启动,这里的boot(靴子)其实是bootstrap(鞋带)的缩写,它来自一句谚语:“pull oneself up by one's bootstraps“,意思是“拽着鞋带把自己拉起来”,当然,这是不可能的事情。最早的时候,工程师们用它来比喻计算机启动这一矛盾过程:必须先运行程序,然后计算机才能启动,但是计算机不启动就无法运行程序!

当然,我们这里不去讲最后工程师们是怎么解决这一问题的(如果你感兴趣并能自己去寻找答案,那么你很可能是一位编程高手)。这里说这个问题,是想说我们在自学编程的过程中会遇到很多很多像boot这样的矛盾问题。

这里不多说,我举一个最简单的例子:自学编程,你要先选择一门语言吧?你得对各个语言都有一些了解才能知道哪个语言适合自己吧?但是还没开始学,怎么对各个语言有了解呢?

当然,最直接的方式就是去问别人,应该学什么语言?但是这无异于你让别人拽你的鞋带把你拉起来。

我当时没有那样去做,我是真的自己去百度,去图书馆找书,去了解每一个语言,甚至我把一些感兴趣的语言都在本地安装了运行环境,并跑起来,那时候我记得我了解了c、c++、java、delphi、vb、vc等等。是的,每门语言都只是运行了一下helloworld,然后了解了一下大概能干什么,光这个过程,大概持续一个月。后来我决定先从vc开始学,因为那个能做出界面,事实证明我错了,应该先学c、再学c++、再学vc。

可能有人会问,你直接去问一个有经验的大佬,让他告诉你不就行了,何必自己瞎折腾一个月还搞错呢?

没错,这次这个问题,你可以问大佬,但是如果你选择编程这条路,以后的事业中到处都是这样的问题,迟早有一天,你要独自面对。

举一个我现在工作中的场景:老板要做大数据+流计算,让你选型,你怎么办?又是去问大佬?大佬的业务和你不一样,他的方案不一定适合你。跟大佬讲清楚自己的业务,让大佬帮你选型?不好意思,你可能找不到这样的大佬,因为是你在上班,而不是他在替你上班。很多时候你只能自己调研,而这调研的能力从哪里来?就是从我之前一次又一次的瞎折腾中总结出来的经验里来。

很多人说,选择编程这条路,你就注定一辈子学习,因为技术永远在更新换代。我觉得这句话没有说到重点,其实选择编程这条路,你注定一辈子面对未知,你必须能够快速把未知的问题变得越来越清晰,你才有可能在这条路上走得远!

举一个我工作中的场景:我曾经做一个很紧急的项目,但是一直没有好的解决方案,偶然找到一个开源项目可以解决我们的问题,十分欣喜。但是开源项目使用nodejs+angular写的,我做的是java,之前只接触过一点nodejs,angular更是听都没听过,但是第二天,我就可以给开源项目动刀子了,开始在它的基础上增加我们的功能。

我做的无非这么几点,第一、快速了解一下angular;第二、粗略看一下源码,看看用到哪些关键技术,针对这些技术快速浏览博客了解;第三、找一些资料系统性地了解一下angular;第四、根据源码和网上的资料快速理清楚代码逻辑。这些内容我在一天内可以完成。

因为我之前自学的时候实在是走过太多弯路,以至于现在我只要看到岔路口,基本就能判断哪些路是大概正确的方向。也许是之前瞎折腾实在太多,以至于把它们垫在脚下,我竟然可以站得比别人更高。

我想这才是我们这些自学编程的人真正的核心竞争力吧?不然,你如何能够比得过那些科班计算机出身的人呢?

再回到题主的问题:

数学知识要求真的不高,主要是基本的逻辑和代数吧,高中数学够用了。如果你数学不好的话,重修建议注重逻辑和代数方面的东西,注重一些公式的推理,这方面能力在编程用得到。

编程英语最好的就是看官方文档,然后哪几个不懂的名词,自行google一下,你只要懂基本的语法就没问题,我们自己学英语的时候,不也是哪个词不懂就去查一下么?多看几次就记住了。

锻炼逻辑思维,我想数学题和算法题是最好的,数学题的话,找一些数学练习册就好,算法题去leetcode,也欢迎关注我的公众号【互联网侦察】,里面有经典面试场景还原的漫画文章,深入浅出,对逻辑很有帮助。

自学app的网站推荐慕课网,慕课网上的很多初级视频都是免费的,而且有很多实践案例,跟着视频做,你会学得很快。

最后还想强调一下,自学的道路上,你一定会碰到很多问题,甚至很多时候你会怀疑人生,但是每一次你自己找到问题的答案,你就会觉得原来也不过如此,或者你会发现其实之前被思维定势给困住了,这时候你就成长了。

这条路很难,若一去不回?便一去不回!

分享

不可多得的好文章,当年自学的时候若有这篇文章指引,也不会苦逼这么多年。我曾经也在自学的道路上苦苦挣扎,我是培训出身,但在培训机构里几乎没学到什么东西,毕业后去面试,没面试一个公司才知道自己学的都是过时的课程,每面试一个公司就发现一个新的知识技术,简直跟哥伦布发现新大陆一样,所以打定主意工作后一定要全补学回来。

工作后的自学并不简单,找视频,找书籍,找资源异常艰难,也走了很多弯路,所以当初在自学的过程当中自己搜集并组建了一个资源库,里面有java从入门开始到架构师的各种资源,pdf电子书,视频教程,学习路线图,各大厂面试集锦,BAT测试题,架构师视频以及电子书和杂志等等,我会不间断,不时的更新的前沿技术。分享给大家,希望大家免受我学习时所受之苦。

                                               致自学编程者们:我是如何通过自学一路走到阿里技术专家的?

 

 

 

 


http://chatgpt.dhexx.cn/article/9cb6ygbB.shtml

相关文章

自学Java真的可以找到工作吗?

就java得市场而言,不管自学还是科班找到工作都不是很难。当然,自学的话,首先要解决的是自制力的问题,如果没有自制力,也就没有了恒心,学不了东西,自然也找不到工作。 其次,java发展…

java能自学吗_java能自学吗?

java能自学吗? Java是一门面向对象编程语言,不仅吸收了C语言的各种优点,还摒弃了C里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了…

自学编程5个月找到了月薪12K的工作,我的方法值得大家借鉴

昨晚在刷知乎的时候,突然跳出了字节发来的录用邮件,期待了很久offer,最大的感受就是这5个月的编程自学没有白费。 高中对编程很感兴趣,但是一边搞主课一边自学编程导致高考没考好,编程也没学出什么苗头。于是选择了一个…

自学java到可以找工作要多久_自学编程需要多久才能找到工作?

自学编程需要多久才能找到工作? 很多编程初学者都会有这种疑问,自学学到什么程度或者学多久能够找到工作,这种问题没有统一答案,因为每个人的出发时候的基础以及在学习过程中掌握的程度不尽相同,也会导致结果不一样&am…

自学java能找到工作吗?公司会要吗?

java是一门面向对象编程语言,它不仅仅吸收了C语言的各种优点,还摒弃了C语言当中很难理解的多继承、指针等概念,所以,java语言具有着功能简单、简单易用这两个特征。 java学习起来还是非常的简单的,现在有很多的人都会自…

零基础自学编程的程序员如何找到工作

现在很多年轻人喜欢计算机,喜欢软件开发,想从事IT行业但又不是学这个专业的,很多人就想通过自学的途径走上这条道路,但大家肯定也和我当初一样有很多的困惑。本人学校学的是国际贸易专业,毕业之后的不顺利加上自身的兴趣爱好,走上编程的道路,下面就结合亲身经历说说自己…

自学单片机能找到工作吗?能有出路吗?

你现在的情况跟我十年前很像啊, 或许我当时的情况比你现在还糟一些。 我们是电气工程毕业的,第一年学了一些电气相关的知识,后面几年学校给我们安排的全是电梯的课程。 我和很多人的想法一样,电梯还需要开专业的课程&#xff1f…

配置Nginx端口

一、起因 昨天晚上闲来无事,上了下阿里云发现自己的域名和服务器都还没过期,所以就把自己的域名绑定到服务器地址上,做了一个DNS解析。但是我发现,每次需要访问8888端口时仍需要使用 域名:8888 这种方式访问,所以我想用Nginx做一个反向代理,将默认打开的80端口转发到808…

宝塔配置Nginx

如果出404 就是因为点击了 恢复默认配置 解决办法 : 重新 指向 目录位置即可

本地项目配置nginx代理请求接口

nginx安装 安装下载地址:http://nginx.org/en/download.htmlnginx配置 相关命令(针对小白,本人也是): 1. start nginx // 启动ng服务器2. nginx -s reload // 服务杀死后进行重启(每次修改配置需执行此操作)3. nginx -…

5分钟教你快速配置nginx实现访问

文章目录 需求操作步骤一、开放端口二、在nginx配置文件中配置端口1)server块2)区分root和alias3)区分server块的root和location块的root4)proxy_pass处理跨域 三、根据配置文件往路径下丢包 总结 需求 工作中我们时常需要完成个…

Debian配置Nginx和PHP

要求: 安装nginx软件包; 配置文件名为ispweb.conf,放置在/etc/nginx/conf.d/目录下; 网站根目录为/mut/crypt(目录不存在需创建); 启用FastCGI功能,让nginx能够解析php请求&#xff…

云服务器安装并配置nginx

初次购买完云服务器,通过 ssh 连接到远程云服务器时,如果在浏览器直接访问,会访问无效,情况如下: 所以我们需要 给云服务器安装 web 服务器。 安装nginx 用 SFTP 工具( Final Shell / Filezilla / WinSCP …

win10安装配置nginx

准备工作 去nginx.org下载nginx,我下载的是 nginx/Windows-1.10.3版本 进入页面->点击download->点击 nginx/Windows-1.10.3 安装 解压,然后启动nginx.exe 当进程中有nginx,就算是启动成功了 访问测试 浏览器访问 127.0.0.1 或者…

安装配置Nginx全分布

目录 一安装准备 1.1安装c环境 1.2下载安装包 二安装配置 2.1上传安装包到相应位置 2.2解压 2.3进入解压的Nginx目录(nginx-1.12.2) 2.4启动/关闭Nginx(要用执行root) 2.5配置负载均衡 三验证 一安装准备 1.1安装c环境 s…

docker安装配置nginx

https://hub.docker.com/search?qnginx&typeimage 一、查看docker是否安装nginx docker images二、安装nginx docker pull nginx三、运行nginx镜像 docker run --name mynginx -p 80:80 -d nginx四、查看运行结果 docker ps网页访问,浏览器输入虚拟机IP:端…

Docker配置nginx

1.Docker安装nginx 安装的命令 sudo docker search nginx docker pull nginx查看是否安装 docker images运行测试nginx docker run --name nginx-test -p 9091:80 -d nginx --name #给你启动的容器起个名字,以后可以使用这个名字启动或者停止容器 -p #映射端口…

linux配置nginx

1、安装所需环境 Nginx 是 C语言 开发,建议在 Linux 上运行,当然,也可以安装 Windows 版本,本篇则使用 CentOS 7 作为安装环境。 1.1 gcc 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境&#x…

Windows本地配置Nginx

Windows本地配置Nginx 目前Nginx被广泛使用,开发自测遇到获取正确IP的需求,故研究了下nginx在Windows下的搭建。 1 安装 Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由伊戈尔赛索耶夫为俄…

STM32开发 -- STM32初识

如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/80374650 一、STM32 32 位 MCU 系列概述 参看:STM32 微控制器 参看:维基百科 – STM32 STM32 系列 32 位闪存微控制器基于 ARM Cortex M 处理器。 它提供的 32 位产品系列,具有超高性能、实时功能…