
2021 年 7 月 18 日我在 CSDN 发布了第一篇技术文章,距现在已有一年,这也意味着我在 CSDN 创作已经一年了。这一年创作历程对我来说,无疑是在 IT 方面技术成长与收获最大的一年,毫不夸张的说,从来没有过在一年时间内能学到这么多,能提升这么多。
其实如标题中所说,“一名 IT 初学者的学习成长之路”,“初学者”这个词对我来说并不是很准确。因为我的本科专业是网络工程,而除网络相关知识外,诸如 JavaScript、Linux、C+、Java、C# 等开发语言我也早有涉及。
众所周知,在大学中无论是网络工程、软件工程、通信工程,还是计科等专业,对于开发语言都会涉略很广。
在这里我将自己称为“初学者”,主要还是因为自己在大学虽然什么都学,结果却是自己貌似什么都不会,什么都拿不出手,这样一看我的确是一个“初学者”。
开始做出转变是在大三学年,为了让自己在毕业后有拿得出手的技能,除备战软考之外,我开始了自我专业技术能力的提升。也就是在那时我才开始实质上的接触 CSDN。
开始学习的是前端,这也是为什么我老说自己是前端出身。首次创作便是以前端为基础,边学习边记录,当时为创作初期,所以文章质量相比于现在是比较低。在记录过程中我创建了自己第一个专栏前端开发工程师知识体系,至今更文 39 篇,基本完结。里面包含了 HTML、JS、JS高级、Node.js、CSS、BOM、DOM、Jquery、Typescript、canvas 多个技术栈,正如专栏标题一样,旨在通过此专栏可以让读者清晰认识到前端开发的所有知识点,掌握相关基础,学习过后便可以真正的认识前端。

在前端开发中,学会基础的知识,还必须要掌握前端开发框架,目前市场主流的有三大前端框架 Vue、React、Angular。我在后期主要学习总结了 Vue(全部)和 React(基础)部分。分别在前端框架之 —— Vue和前端框架之 —— React两大专栏中。文章均以理论加实操演示的形式进行展示,目的就是为了让读者能够一眼看懂,更加清晰明了。

在大四学年,学习已基本结束。我来到了北京一家企业实习,岗位正是前端开发,这才开始了真正的实践工作。正所谓“实践是检验真理的唯一标准”,在实习的过程中我学到很多,更是掌握了不少前端理论之外的东西。在工作中我也没有放松博客的总结,利用闲余实践将自己的实操记录在了博文当中,在这个过程中我也创建了我认为最有意义的实操型专栏前端实战知识集锦,其主要内容为 前端+Vue+Echarts+Element UI 的开发实践经验。

实习结束后,我始终没有忘记自己想要做一名技术项目经理的目标,而仅仅懂得前端开发是不现实的。我开始涉及前端之外的其他技术栈,并非后端,而是基于项目层面的开发知识,如 Linux 和云原生(原力计划),同时创建了两大专栏:云原生 - 入门到实战和 Linux 操作系统入门到精通,目前更文三十余篇。



以上就是小马这一年来的创作历程,从开始的前端到 Linux,再到云原生,自己所涉及的领域也越来越广,同时学习难度自然是越来越大,不过从一开始学习、到学会,再到以自己的理解总结成文章,每当成文的那一刻,我都能感觉到满满的成就感,我相信这也是 CSDN 各位同道能一直坚持创作的原因之一。
学会总结本身就是自我进步的过程,将这些知识分享给其他人,让他人受益。这正是我创作的初衷——提升自我,受益他人。所以我的每一个专栏、每一篇文章都是完全免费的。
学习使人快乐,分享使人快乐!学习之路永无止境,而这也仅仅是开始…
从给定URL下载文件并立即将其上传到AmazonS3的更直接的方法是什么(+将有关文件的一些信息保存到数据库中,例如名称、大小等)?现在,我既不使用Paperclip,也不使用Carrierwave。谢谢 最佳答案 简单明了:require'open-uri'require's3'amazon=S3::Service.new(access_key_id:'KEY',secret_access_key:'KEY')bucket=amazon.buckets.find('image_storage')url='http://www.ex
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭3年前。Improvethisquestion我正处于学习Ruby的阶段,我想查看一些小型库的源代码以了解它们是如何构建的。我不知道什么是小型图书馆,但希望SO能推荐一些易于理解的图书馆来学习。因此,如果有人知道一两个非常小的库,这是新手Rubyists学习的好例子,请推荐!我想使用Manveru'sInnatelib,因为它试图保持在2000LOC以下,但我还不熟悉其中经常使用的Ruby速记。也许大约100-5
在Ruby(尤其是Rails)中,您经常需要检查某物是否存在,然后对其执行操作,例如:if@objects.any?puts"Wehavetheseobjects:"@objects.each{|o|puts"hello:#{o}"end这是最短的,一切都很好,但是如果你有@objects.some_association.something.hit_database.process而不是@objects呢?我将不得不在if表达式中重复两次,如果我不知道实现细节并且方法调用很昂贵怎么办?显而易见的选择是创建一个变量,然后测试它,然后处理它,但是你必须想出一个变量名(呃),它也会在内存中
我有以下代码,它下载一个文件,然后将文件的内容读入一个变量。使用该变量,它执行一个命令。这个配方不会收敛,因为/root/foo在编译阶段不存在。我可以通过多个聚合和一个来解决这个问题ifFile.exist但我想用一个收敛来完成它。关于如何做到这一点有什么想法吗?execute'download_joiner'docommand"awss3cps3://bucket/foo/root/foo"not_if{::File.exist?('/root/foo')}endpassword=::File.read('/root/foo').chompexecute'join_domain'd
在Ruby中,这两个表达式看起来做的事情相似:'it'=~/^it$/#0'it'=~/\Ait\Z/#0#but/^it$/==/\Ait\Z/#false所以我想知道^-\A和$-\Z和如何选择使用哪一个? 最佳答案 仅当您匹配的字符串可以包含新行时,差异才重要。\A匹配字符串的开头。^匹配字符串的开头或紧跟在新行之后。同样\Z只匹配字符串的结尾,而$匹配字符串的结尾或者一行的结尾。例如正则表达式/^world$/匹配“hello\nworld”的第二行,但表达式/\Aworld\Z/匹配失败。
在我的schedule.rb文件中,我有以下几行:set:output,'/log/cron_log.log'every5.minutesdocommand'echo"hello"'end我按照这个问题Rails,usingwhenevergemindevelopment中的建议运行了whenever-w,并且我假设cronfile已编写并正在运行。(我也尝试重新启动Rails服务器。)当我运行$crontab-l时,我看到以下内容:0,5,10,15,20,25,30,35,40,45,50,55****/bin/bash-l-c'echo"hello">>/log/cron_log
在Rails3.x应用程序中,我正在使用net::ssh并向远程pc运行一些命令。我想向用户的浏览器显示实时日志。比如,如果两个命令在net中运行::ssh执行即echo"Hello",echo"Bye"被传递然后"Hello"应该在执行后立即显示在浏览器中。这是代码我在rubyonrails应用程序中使用ssh连接和运行命令Net::SSH.start(@servers['local'],@machine_name,:password=>@machine_pwd,:timeout=>30)do|ssh|ssh.open_channeldo|channel|channel.requ
我正在为Jekyll编写一个转换器插件,需要访问一些页眉(YAML前端)属性。只有内容被传递给主要的转换器方法,似乎无法访问上下文。例子:moduleJekyllclassUpcaseConverter关于如何在转换器插件中访问页眉数据有什么想法吗? 最佳答案 基于Jekyll源代码,无法在转换器中检索YAML前端内容。根据您的情况,我看到了两种可行的解决方案。您的文件扩展名可以具有足够的描述性,以提供您本应包含在前言中的信息。看起来Converter插件的设计就是这么基本的。如果修改Jekyll是一个选项,您可以更改Convert
我的正则表达式捕获引用的短语:"([^"]*)"我想通过忽略引号来改进它,引号后跟',-'(按此特定顺序排列的逗号、空格和破折号)。我该怎么做?测试:http://rubular.com/r/xls6vN1w92 最佳答案 这应该可以做到,使用NegativeLookahead:"(?!,-)([^"]*)"(?!,-)有点恶心,但它有效。您要确保引号后面没有跟您的字符串,否则匹配将从结束引号开始。http://rubular.com/r/yFMyUKJOHL 关于ruby正则表达式:"
在Textmate中使用ctrl+shift+d快捷方式重复行时,出现以下错误:“ruby:警告:指定了-K;这是为了1.8兼容性,可能会导致奇怪的行为” 最佳答案 此问题不仅限于重复行,还可能出现在其他使用ruby的地方。我通过将Preferences...>Advanced>ShellVariables中的PATH更改为/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin来解决它:/usr/bin:/bin:/usr/sbin:/sbin此更改后,Tex