现身说法。
女,今年30,现役建筑师第五年,没有任何计算机语言基础,纯自学ios编程,学加编两个月后,用纯代码方式制作完成并上传第一个app,前几天已经在app store上架。
有兴趣细听的就接着往下看嘞。
-----------------------------------------------------------
对于编程这一行,我的底子是这样的:
本科和研究生均是建筑专业,每天就是画图。
上学的时候计算机语言不要求必修,就都没上过。
我系数学是跟日语系一起学的,难度呵呵。经过多年建筑实践,算加减乘除都费劲。
对计算机从来没感过兴趣。
电脑对我来说的作用,就是上班时画cad,下班后看电视剧。
不玩电脑游戏。(提这么一句是因为总觉得游戏玩得好的人都是电脑大拿+_+)
就这种底子,你以为最开始我心里有底么?
不过,好歹高中毕业之后我还是会一点英语的嘛。
而且,好歹高中的时候我理科也学得还可以嘛。
所以你猜怎么着,
我就是觉得我能行。
-----------------------------------------------------------
我说的“两个月”学加编,具体来说是这样的:
准备工作:西单买个mac mini(因为苹果主机里就这个便宜囧rz),京东买参考书,上网找视频;
第一个月:(其实不到,三周多点吧)看书,看教学视频。
这个时候我还在准备一个考试,算是边角料时间看的。每天吃饭的时候拿着pad,睡觉前拿着pad,差不多一个月,C语言和objectiveC语言的东西大概看过一遍了。看教学视频更好,后面会细说。
第二个月:(五周多)一边写代码,一边查,一边学。
之前准备的考试结束了!我就把时间都扔进代码里面了。
不过没有早起贪黑(30岁的身体容易累=_=),周末也照玩。到最后年根前面,想趁过年回家之前把这个了解掉,有一周干到比较晚。
其实我这个app是建筑规范查询类型的,就是把常用的规范那几条都摘出来,比较费时,准备文本资料单独费了一个月的时间。不过和编程的过程没关系,就没算在那两个月里。
恩,就这些时间。
-----------------------------------------------------------
对于同样想完全自学编程的同志们,我的血泪经验是这样的:
1、看教学视频比看书快。
我最开始是看书自学的。可是书的内容难度一加深起来,催眠效果也倍增╮(╯﹏╰)╭
于是开始找网上视频看。深感看视频效果好。
一是有人讲,没那么容易走神发困;
二是看着方便,吃饭的时候也不怕脏不愁翻页;
三是容易控制进度,方便定学习计划;
四是容易理解。书上没法翻来覆去说一件事好几次,视频就可以。说一次,就这老脑子,哪记得住啊。
ios两条路,OC或者swift,我选的是OC。因为听说用的人多些,那遇到问题网上搜到的答案也会多些吧╮(╯▽╰)╭
网上查说,要用OC编程,就得先学C语言,再学Objective C,最后学UI开发实践,三步。
C语言我看的视频是这个:
http://www.iqiyi.com/a_19rrhb8jgl.html
推荐!
我赢职场的这位老师是姓周吗?没听他自我介绍过。
这位操着一口东北乡音的老师,真的讲得清楚明白,零基础也能懂。
不过到了OC,发现爱奇艺上视频不全T^T
别的网也没搜到,就改别的教程了。
我选的是百度传课上的这个:
扣丁学堂 _老郭_iOS开发培训课程
说实话,并没有那位东北老师那么清楚明白……
不过够全,且免费,也差不多能听懂,要啥自行车啊。
好处是这位郭老师的第三阶段UI开发实践课很好:
扣丁学堂 _老郭_iOS开发培训课程
特全,且都是用故事板和代码两种形式来演示,后期我都是把这套视频当工具书使的。好用。
真心感谢各位提供网上教学视频的老师!你们是最可爱的人!
2、然而书,还是必须买的。
为什么?查着方便,有什么忘了复习也方便。
虽然编程的书都好贵/(ㄒoㄒ)/~~
C语言我买的是这本:C语言从入门到精通
挺好的。称职的扫盲教程和工具书。
不过ObjectiveC我买的就很坑爹了……
以前买啥都是京东搜销量最高没出过啥错啊……
可是这本ObjectiveC基础教程(第2版)
我真的很很很很不稀饭啊。
看销量常年第一……评论里好评如潮……我猜大概是我底子太差的问题吧……
也许有别的编程语言基础的人确实会觉得这书不错?
可我全程都不晓得作者在搞毛……
只感觉他在说:看爷牛逼吧!看爷的例子牛逼吧!看爷的代码牛逼吧!
理解难度大概相当于,当年日语刚考过二级的我,兴冲冲下了半泽直树的生肉来看……
呵呵……
而且就连当工具书随便查个东西都做不到啊!编目录的时候能别那么装吗我摔!
还挺贵!还我50块!
总之我现在仍未找到合适的OC工具书╮(╯_╰)╭
UI开发我买的是关东升老师的这本:
对于独立开发者如我,推荐。
虽然里面代码的例子偶尔用了些过于高深的做法(比如admob能不用什么桥文件么关老师T^T)
但是整个开发流程的演示,极好。
比方说,代码写差不多了,接下来还有好些工序呢。测评,插广告,打包封装,上传,申请,这书里交代的很详细,比网上找各种教程拼凑到一起再瞎蒙靠谱太多了。就凭这,这书买得值。
最后要注意的是,对于ios编程,买书就尽量买最新的。
我还去图书馆查过某本书,抄了某个语句写法,回来一试不灵。原来这程序没事就升个级,一升级原来的不少语句就不好使了o(╯□╰)o
3、还要记住,对于ios开发的完全生手如我者:
不要用故事板!
不要用故事板!
不要用故事板!
说起来,故事板确实看起来很亲切。
当时费劲千辛万苦终于把xcode下载了,打开一看,到处都是洋文,心里那个虚。
直到打开故事板,眼前一亮,这特么不就是photoshop吗!
天天画图ps我熟啊!
旁边的button不就是按钮吗!直接拖动到屏幕上,双击就能改标题,这不就是高级版的ps吗!
就这么,故事板曾经给了我莫大的自信↖(^ω^)↗
然而到真开始写代码练手,用故事板就越来越发现吃力了。
原因在于,故事板不能单独生效,还是得配着代码。
这就是两个纠缠的系统一起使力。
然而故事板,是一个黑箱。
完全初学者如我,是应付不了这么复杂的局面的。
故事板就像一个很有能力却沉默的助手,你吩咐他事情,他就去做,但是你不晓得他怎么做的。更麻烦的是,万一你想稍微改改做法,不晓得怎么告诉他;万一你忘记了告诉他一个步骤,整个事就办不成,却无从查起。
写了几天,故事板给我带来的麻烦和困惑险些让我彻底放弃。
直到我决定用纯代码,学习进度才开始突飞猛进。
对于完全生手,纯代码反而是简单的。
起码得知道自己每个动作是在干嘛啊。
当然也是因为,我的app有240个页面呵呵呵……
没办法,我想把常用规范收全一点嘛……
想想我居然曾经决定在故事板里放上240个页面,也是醉了……
作为初生牛犊……相当虎啊。
------------------------------------------------------------------------
至于我为什么要花这么长的时间学编程做软件?
很简单,因为我记性不好。
我们建筑师,想把方案实现,是要受各种建筑规范限制的。
房间该开几个门向哪里开,楼梯数量够不够距离会不会太远,电梯厅得多大,面积怎么算……每一步都有规范卡着。
可我记不住。
当然,我手上也是有各种规范的。纸版规范单位都有几套,电子版也有伟大的众智给总结收集好了。
当然,我也不是不看这些规范,我知道怎么查,也查过N多次。好歹画过几套施工图了,注册知识题也都过了。
可我就是记不住。
随看随忘,下次重新查。
问题就在于,建筑规范这东西,每次查起来,都非常麻烦。
规范并不是只有一本,而是几十本。
即使在一本规范里,关于一个问题,也未必只写了一条,可能是两三条。
更缺德的是,这两三条,可能还分布在隔很远的章节。
于是,每次查一个小东西,都得看着几十个规范名称猜,哪几本才有这个内容?
拿出那几本之后再翻目录,再猜这个内容可能会在哪里?
然后分别翻遍这几章,才终于算是找完了。
祈祷这内容没在没查到的地方藏匿着。
就是因为查规范太复杂,建筑师们通常都有很好的记性。
记住了,就省得再查。
可是对于一个记性很差的人如我,臣妾就是做不到啊!
勉强记住也不敢信啊!真的没记错?
作为一名已经画图5年的建筑师,什么都记不住好丢人的。
新人小朋友随口一问规范,我啥都答不出。
好丢人。
更丢人的是,身边其他同事们都记得挺清楚。
规范记得熟的同事会眉飞色舞给小朋友讲解:防火分区面积很简单,有什么记不住的?就这五六七八种情况嘛……
然后小朋友们一定都在心里默默翻我白眼吧……
丢人归丢人,可我心底其实一直有个想法:
我为什么非得记住?
计算器都发明了,还有必要学速算吗?
这都什么年代了,还非得用人脑来记东西吗?
所以我偷偷弄了个笔记,想把常用的规范条文都摘出来,什么疏散距离,防火间距之类的,省得下次重新查。
摘出来之后发现,规范的文字还是读起来太冗长太费劲了。
如果查找一个结果的时候,前面的判定条件能搞成选项的话,跟着选项一步一步走,无关的内容我就都不用读了,那多轻松。
于是我开始打excel的主意。我用excel做过下拉菜单,也会弄点简单函数,前面选项一变,后面结果就跟着变了。
可是我用防火分区面积试验的时候,发现excel函数的嵌套是有次数限制的。连防火分区面积都罩不住,疏散距离啥的更白扯了。
excel的函数不靠谱,还有什么软件可以用?
就这么,我想到了一个点子:
我干嘛不干脆自己写个软件?
然后,我就写出来了。
------------------------------------------------------------------------
为什么不请别人写?
因为穷啊!
为什么不请别人教?
因为穷啊!
程序猿工资可比我们建筑狗高多了。
而且作为准留学狗一名,马上进入漫长的零收入高消费期,一分钱都恨不得摔八瓣花,哪里有这个胆。
再说,我也并不期待这个程序能赚几个钱,一开始就打算搞免费的。不赚钱也别一上来就先赔一大笔吧。
虽然常常觉得,身边没有一个师傅的感觉,还是太无助了……
遇到问题就找书,找教学视频,找网上。基本上很少一次查询搞定,都得查十来次,根据大家的意见,摸着石头过河……
最久被一个问题卡过三整天,一个特别小特别初级的问题。某天起床一睁眼突然就想到办法,改了几个词,就解决了。
回头一看,全都很简单。可当时就是绕不出来。
好想认识个师傅啊……
在这里我要衷心感谢在博客和论坛等地方踊跃分享自己经验的前辈们。
我太爱你们了!太爱太爱了!
没有这么多网上的经验,我根本不可能把代码写出来!
------------------------------------------------------------------------必须说一句,能把代码俩月写出来,首要原因,还是因为我的软件诉求很简单。
非常简单。
我不就是要一个升级版的excel吗,又不是想做一个纪念碑谷。
所以俩月也就够了。要是做个再复杂点的东西,八成搞不定吧。
最开始我曾经想着就用label和button两个功能搞定所有。谁叫这俩功能最简单……
不过到了最后,textview、table、picker、segment、protocol之类教学视频里教的功能,也差不多使全了……
谁叫我也是一枚对知识欲壑难填的铝纸吼吼。
虽然都是每种功能的最简单用法╮(╯▽╰)╭
------------------------------------------------------------------------
回到问题,30岁开始学习编程,有什么不靠谱的?
就算40岁,50岁,60岁,在什么年纪开始,都没什么不靠谱的。
我的记忆力可能是比十来岁的时候衰退了不少……
不过我并没感到我的学习能力比起十来岁有什么衰退。倒觉得见识多了,理解力还更强了。
所以我不觉得任何年龄应该被设定成学习的死线。
不过要是学习编程准备转行,就是另一个问题了。
我算是自己写了一个软件出来了。可是我很清楚,我的那些操作,充其量是照猫画虎。
我并不清楚这些语言后面的运行逻辑。我也只熟这一种语言。
放在招聘市场上,我目前的劳动能力,大概相当于初中肄业去技校学编程仨月出师的那种吧……
话说回来,要是哪天建筑圈真的没有我的地方了,去像技校速成刚毕业的孩子一样实习程序员,我也还是有自信的。和科班出身的孩子比必然还落着一截,上班狂加班下班狂补习两三年的话,工作上面对一些小活,大概也能大差不差?
但对于究竟要不要快40了还跟嘴上没毛的新毕业生们一起打杂?
快退休了可能还只是一个麻麻的水准?
这就不再是一个学习本身的问题,而是一个时间投资和自尊的问题了。
题主说的量化交易是啥,我 不 懂╮(╯▽╰)╭
我想说的是,如果不是特别紧迫,何妨自己先学学试试?
想做很厉害的话当然还是要人教了。
但是如果只是想做个东西出来,解决自己的问题,也许这事没那么难。
学习可不是非得痛下血本才有效果的事情。
找点业余时间,定个小计划,先买点入门书,看看教学视频,再上手练练,找人请教请教,也许就ok了呢?
反正作为一名天资平平的普通女性,我的问题就这么解决了。
何况,学东西这件事本身是很让人开心的。
再说,不学东西,那些时间不也刷手机刷掉了,看电视剧看掉了?
生而为人,每次浪费时间的时候总能感到,就算我过着猪一样的生活,也没法像猪一样快乐……
空虚无法使人真正快乐是人的原罪啊。
现在,我很高兴我花了这两个月,认识了一门新语言。他很有趣,也很强大。
我感到认识他让我的人生多了好多可能。就算将来我未必要做程序员,我还是非常期待了解他更多。我们未来还有很多很多两个月,想想就有点小激动呢~
这种经历,真的不想试试吗?
------------------------------------------------------------------------
最后当然是放我自己的这个软件出来给大伙看看了。
去app store搜索“建筑速算器”,就是了。
其实这篇写这么多,也是想顺便当官博的介绍:-P
对于用着苹果手机的搞建筑的同行们,我真心觉得我这个还挺好用。
因为我就是写给自己平时用的啊。
反正不要钱,下来试试呗~使用也很流畅,因为我啥多余功能都还不会加呢ㄟ( ▔, ▔ )ㄏ
你们多用的话,我还能挣俩广告钱(´⌣`ʃƪ)
当然欢迎拍砖!板砖就是爱!
网友评论
不过也是知道规范怎么查、那里去查,咱这种,估计要往方案钻,施工图的话,很恼火。