目录
虽然理科生的文笔不好,但是请听我娓娓道来。
13年在湖南长沙进入大学校园(电子信息工程专业,学校我就不方便说了),说出来可能大家不相信,当时的我只有17岁。苒苒时光现在已经到了而立的年纪。
17岁的我热爱上了打游戏,由于未成年不能上网,就找家里给我买了第一台笔记本电脑E540,现在我还记得花了家里很多的钱,不过我用半年的时间在暗影岛登上了王者,不亏吧?

后来和女朋友分手后就对游戏提不起兴趣了(现在你们可以开心一下了)

在离校实习的三个月前爱上了易语言。我想很多人和我当时一样,认为易语言玩家都是黑客是大神(对编程语言不了解)。逛遍了各类论坛,学习制作游戏WG,写各类脚本(脚本小子)总之看了很多视频教程,读了很多大佬的开源。
而最后还是觉得自己是个小菜鸟,WG的偏移算法,脚本的各类模块,post的各种JavaScript加密都是我最不擅长的,可我最想要学的就是这些技术(心怀成为大佬的梦想),但是在当时这类技术想学都是必须花钱的,不像现在这样人人开源,都有机会成为大佬。

校招把我弄到了一家PX机构,我的工作就是负责督促Python学员上课,和催作业(和在学校时候的班长很像)
也就是我在个时候认识了Python这门语言,看着讲师们每天用着Pycharm敲着一些英文,备着一些简单的爬虫课题(在易语言中咱们叫这个post),当时我就觉着我也能够轻松采集这些网站,但是当我用易语言各种网页_访问、取文本中间后再看看Python的源代码,我突然间就觉得易语言不香了!Python简直了,我从未想过还有比易语言简单的编程语言(那个时候的想法,别误导你们,其实说是简单只是单纯的入门简单,最终掌握任何语言都很难!)

我开始白天工作,晚上自学Python,学过易语言的肯定就知道,这两门语言简直神似(前提是英语水平不是太差)三天我就入门了,看了菜鸟教程,掌握了基本语法。
至于各种模块的用法谷歌一下基本用法就好了(粗制滥造),开始钻研JavaScript逆向,看了好多的视频教程,最终发现脑子会了手不会,看得懂不会做。没办法,又开始自学前端,学习JavaScript语法,最终经过了一年多开始攻克JavaScript混淆,熟练hook。
我自认为我已经很牛了,算是行业里的翘楚了!

面试的第一家公司在上海,本来是个不想离家太远的人,为柴米油盐为生活所迫,最终还是出了远门。
写好我自认为很牛的简历(其实真的很牛了,在当时),面试的时候问我的基本都是一些稍微偏门带点难度的基础知识,但是最后他问到我会不会建站(web开发)是否掌握Django,是否能够从公司数据中分析一些规律,合理的最大化利润时,我蒙了!

为什么?因为我只会Python爬虫,不管是目前最火的字体加密,指纹我都能搞定。但是我确实不会web和数据分析......
我有疑问:为什么我简历上没提过我会web开发、数据分析,面试的时候会问我呢?
当时我就知道他肯定是为了压低我的薪资。没办法,Python在当时的工作真的不好找岗位太少,只能任凭处置了,给了我8K(18年)。
每天就是给老板采集数据,制作工作用得上的脚本工具。怎么说呢,很轻松但是我发现我两年的时间没有一点长进,我知道我这样下去要完了!两年后我的薪资才1W......
由于在公司的时候加了很多老板的联系FS,我毅然离职走上了我的外包之路。(不多说了,感觉就是把自己卖了两年)

回到长沙,自己租了个50平米的房,三台电脑一条狗一个人。
大家别以为Python爬虫的外包不吃香,事实上真的吃香!基本每天都有单子,而这些单子也许对其它人来说很难,而对我来说都是手到擒来!

说实话我不否认我做过很多WF的单子,毕竟Python爬虫大家都懂,我不做过多辩解。
半年我挣了50个,但是我并没有满足。因为我发现我自己每天都在熬夜每天都没时间去做我想做的事情,头发白了,胡子都白了......女朋友也没有,说实话我很自卑,变得又胖又邋遢了。
这不是长久之计,我开始思考怎么样才能让自己变得轻松。我开始自己研发一些软件给别人使用,使用卡密的形式,这样可以减少我很大的工作量。事实证明是可行的(半年出售了800多张卡密),虽然赚的少了很多,但是我的时间变多了,我有机会改变自己的身体状况。
由于时间变多了,而我朋友开了一个PX机构,要我过去给学生上课。我觉得也挺好的,毕竟这也是一份额外的收获。
但是我还是秉承着对想学习的学员倾力而为,而不是谈付费的问题。因为我赚的钱够我花了,而很多人还是多年前的我,与我何其相似?为什么要为难当初的自己呢。
大家好,我叫善念,也许你曾听过我讲课,也许你曾经看过我写得文章,说明咱们的缘分还在继续,我也需要进步,更多的难题等着我去跨过,web开发、大数据、AI等等都是我要去碰的南墙。
而你的南墙呢?有我帮着一起推倒,咱们一起进步。能帮的都会倾力去帮助大家,我更希望大家自己去钻研,有问题大家一起讨论,而不是按部就班走PX的流水线。

文章到这里就结束了,感谢你的观看,只是有些话想对读者们说说。
这是我第一次写自己经理的文章,说实在的,如果在后台能够看到一些读者给与回应,我都觉得很欣慰,对于自媒体我是个刚入门的人,还是个中年大叔…为了感谢读者们,我会把我收藏的一些编程干货贡献给大家,回馈每一个读者,希望能帮到你们。
干货主要有:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
如果你用得到的话可以直接拿走
链接:https://pan.baidu.com/s/1I5ohOlfrcdC_NdgYLFWGgQ
提取码:7kcd
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta
我需要从一个View访问多个模型。以前,我的links_controller仅用于提供以不同方式排序的链接资源。现在我想包括一个部分(我假设)显示按分数排序的顶级用户(@users=User.all.sort_by(&:score))我知道我可以将此代码插入每个链接操作并从View访问它,但这似乎不是“ruby方式”,我将需要在不久的将来访问更多模型。这可能会变得很脏,是否有针对这种情况的任何技术?注意事项:我认为我的应用程序正朝着单一格式和动态页面内容的方向发展,本质上是一个典型的网络应用程序。我知道before_filter但考虑到我希望应用程序进入的方向,这似乎很麻烦。最终从任何
我想要做的是有2个不同的Controller,client和test_client。客户端Controller已经构建,我想创建一个test_clientController,我可以使用它来玩弄客户端的UI并根据需要进行调整。我主要是想绕过我在客户端中内置的验证及其对加载数据的管理Controller的依赖。所以我希望test_clientController加载示例数据集,然后呈现客户端Controller的索引View,以便我可以调整客户端UI。就是这样。我在test_clients索引方法中试过这个:classTestClientdefindexrender:template=>
如果您尝试在Ruby中的nil对象上调用方法,则会出现NoMethodError异常并显示消息:"undefinedmethod‘...’fornil:NilClass"然而,有一个tryRails中的方法,如果它被发送到一个nil对象,它只返回nil:require'rubygems'require'active_support/all'nil.try(:nonexisting_method)#noNoMethodErrorexceptionanymore那么try如何在内部工作以防止该异常? 最佳答案 像Ruby中的所有其他对象
关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion为什么SecureRandom.uuid创建一个唯一的字符串?SecureRandom.uuid#=>"35cb4e30-54e1-49f9-b5ce-4134799eb2c0"SecureRandom.uuid方法创建的字符串从不重复?
我有一个正在构建的应用程序,我需要一个模型来创建另一个模型的实例。我希望每辆车都有4个轮胎。汽车模型classCar轮胎模型classTire但是,在make_tires内部有一个错误,如果我为Tire尝试它,则没有用于创建或新建的activerecord方法。当我检查轮胎时,它没有这些方法。我该如何补救?错误是这样的:未定义的方法'create'forActiveRecord::AttributeMethods::Serialization::Tire::Module我测试了两个环境:测试和开发,它们都因相同的错误而失败。 最佳答案
几个月前,我读了一篇关于rubygem的博客文章,它可以通过阅读代码本身来确定编程语言。对于我的生活,我不记得博客或gem的名称。谷歌搜索“ruby编程语言猜测”及其变体也无济于事。有人碰巧知道相关gem的名称吗? 最佳答案 是这个吗:http://github.com/chrislo/sourceclassifier/tree/master 关于ruby-寻找通过阅读代码确定编程语言的rubygem?,我们在StackOverflow上找到一个类似的问题:
我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b
我想让一个yaml对象引用另一个,如下所示:intro:"Hello,dearuser."registration:$introThanksforregistering!new_message:$introYouhaveanewmessage!上面的语法只是它如何工作的一个例子(这也是它在thiscpanmodule中的工作方式。)我正在使用标准的rubyyaml解析器。这可能吗? 最佳答案 一些yaml对象确实引用了其他对象:irb>require'yaml'#=>trueirb>str="hello"#=>"hello"ir