招了个比较菜的开发,是继续培养还是放弃?

2015-05-24 17:33:11 +08:00
 banxi1988

招了个比较菜的开发,是继续培养还是放弃?

背景

由于公司位置原因(广西南宁),招了很久没有招到人,于是近来放松了要求,好了,招了个 iOS 开发进来.
由于他完全没有听过Git 这东西,于是第一天是培训下Git的使用.然后是Xcode使用,然后是AutoLayout,
UIScrollView,UITableView等等.

序曲一

首先是AutoLayout的使用测试, 写代码不会, 第一天勉强交差, 但是处理UILabel时,不知道contentHuggingPriority属性.于是我亲自写代码示范指导了一遍.
第4天时,布置了实现一个列表页加详细页的小Demo,没有增删.
做过开发都应该知道,这种一个列表页一个详情页,是最简单也是最常见的Demo了.
Xcode 生成的Master-Detail 项目模板都比这样复杂.
一开始我还是渐进的要求的, 要求实现一个列表页吧.
但是, 它居然开始是网上找了一个Demo 来交差 (不过刚好,那Demo我在Github见过,还提过PR)
于是要求让他自己写.
晚上交差,发现他所知道的MVC应该就是知道其缩写,这还在其次,更让我失望的是,居然类都不会用.
自然,我叫他好好理解下Model的意义和使用
晚上,一看代码,如果多了个Model类,但是是这样的:

class Model {
    var titleLabelArray = ["漓江晚霞迷人景色","尽游三江",  "阳朔夜景一角","阳朔夜景一角",]
    var bodyLabelArray = [ "漓江迷人风景,千姿百态的民族风情,让人流连忘返",  "强化漓东巡逻防控,预防和震慑\"两抢一罪\"犯罪",  "强化漓东巡逻防控,预防和震慑\"两抢一罪\"犯罪", "强化漓东巡逻防控,预防和震慑\"两抢一罪\"犯罪"]
    var imageArray = ["guilin0", "guilin1", "guilin2", "guilin3", "guilin4"]
    var timeArray = ["2015-05-01", "2015-06-02", "2015-07-03", "2015-08-04"]
    var scrollViewLabel = ["风景1","风景2", "风景3", "风景4"]
}

原来这就是他所谓的Model啊...
然后我想,接下来我会交给他实现详情页的任务,那时他应该会认识到他的错误了吧.

序曲二

然后第二天任务就是,在前一天的基础上,实现详情页

下午的时候,他去上厕所的时候遇到我,问我说,给详情页传数据用委托怎么样?
我心里想: 委托? 这里要用委托?
然后我说要不你先看看iOS 的 那个教程 马上着手开发 iOS 应用程序 (Start Developing iOS Apps Today)

下午下班前,问他看了没? 他说他已经实现得差不多了
晚上我办事完,回到家看到它的代码,还是老样子,整个人都不好了, 真是聪明的孩子啊! 估计用plist来传值

var ban = NSBundle.mainBundle()
        //读取plist文件路径
        let plistpath = ban.pathForResource("DetailModelList", ofType: "plist")!
        //读取plist内容放到NSMutableArray内
        data = NSMutableDictionary(contentsOfFile: plistpath)

        title1 = data?.valueForKey("title") as! [(String)]
        time = data?.valueForKey("time") as! [(String)]
        date = data?.valueForKey("date") as! [(String)]
        from = data?.valueForKey("from") as! [(String)]
        bodyImage = data?.valueForKey("bodyImage") as! [(String)]
        bodyText1 = data?.valueForKey("bodyText") as! [(String)]

他居然是使用在列表页将一个列表项的内容写入一个文件,然后再详情页中再读取.
但是在iOS 中这样应用中两个类之前传递值,只要简单的

detailViewController.item = selectedItem;

即可.

细节

  1. 他用 百度查 Model 的时,我说翻墙都给你配置好了,为什么不用Google啊?
    回: 之前从来没有翻过,用Google不习惯

  2. 上面让其看 Apple 的文档时,居然开启了Google的自动翻译,然后也是不看英文文档的,
    估计基本也就告别了StackOverflow了,太可惜了. (英文不好,还不思进取,在我心里减分不少)

再给一次机会

早上,我出去办事之前,给他Tower上留言说:

继续修改,希望晚上能看到让我满意的结果

晚上回来,一看,处理详情页的代码更难看了
增加了一个DetailModel.swift文件
全部内容如下:

import Foundation
import UIKit

var ban = NSBundle.mainBundle()
//读取plist文件路径
let plistpath = ban.pathForResource("DetailModelList", ofType: "plist")!
//读取plist内容放到NSMutableArray内
var data = NSMutableDictionary(contentsOfFile: plistpath)


var title = data!.valueForKey("title") as! [(String)]
var time = data!.valueForKey("time") as! [(String)]
var date = data!.valueForKey("date") as! [(String)]
var from = data!.valueForKey("from") as! [(String)]
var bodyImage = data!.valueForKey("bodyImage") as! [(String)]
var bodyText = data!.valueForKey("bodyText") as! [(String)]

func detailModelOfNum(num: Int) -> (title: String, time: String, date: String, from: String, bodyImage: String, bodyText: String) {
    return (title: title[num], time: time[num], date:date[num],from: "来源: " + from[num], bodyImage: bodyImage[num], bodyText: bodyText[num] )

}


func changeView(obj: DetailViewController, num: Int) {
    obj.titleLabel.text = detailModelOfNum(num).title
    obj.timeLabel.text = detailModelOfNum(num).time
    obj.dateLabel.text = detailModelOfNum(num).date
    obj.fromLabel.text = detailModelOfNum(num).from
    obj.bodyText.text = detailModelOfNum(num).bodyText
    obj.bodyImageView.image = UIImage(named: (detailModelOfNum(num).bodyImage))
}

这下我真是失望透了,于是直接在Tower回了:

刚看了,很不满意, 失望.

他回复的其中一句,真是让我苦笑不已啊:

model的概念我理解差不多了

矛盾

这种开发, 我内心是不肯花时间去培养的.
但是,在相对落后的地方招人又比较困难,而且说起来他还是有 iOS 开发经验的

个人倾向: 不想浪费时间了.

18521 次点击
所在节点    程序员
216 条回复
billwang
2015-05-24 23:37:53 +08:00
从情理上说楼主尽量体谅一下刚入门的初学者,毕竟大家都从不会开始
从道理上讲,你培养起来后这哥们肯定飞了,这个是绝对的。
所以,楼主自己决定吧。
sing1ee
2015-05-24 23:52:26 +08:00
建议长痛不如短痛
chens
2015-05-24 23:58:30 +08:00
好佩服楼主的耐心和容忍。。。
badec
2015-05-25 00:01:21 +08:00
先试着培养,如果他没好学上进心,那就放弃。如果有好学上进心的话,培养好,会对公司对你更有归属感
RaymondYip
2015-05-25 00:01:51 +08:00
不怕神一样的对手 就怕 猪一样的 队友啊 楼主
targz
2015-05-25 00:09:03 +08:00
这种态度和悟性,感觉还是算了吧。可能能教会,但是估计教会了,也仅仅是会
MarineLv
2015-05-25 00:09:42 +08:00
南宁的行业环境不清楚,不过从楼主的描述中可以看出几点:

一、楼主说这个人简历上写一年iOS经验,但是从后面的表现看,不像是一个一年开发经验的人的水平。所以,要么是简历上说假话,要么就是学习能力和学习态度不够格。

二、楼主让此人写demo,显然就是为了让他练手学习的,然而他用网上下的代码交差,从楼主让他自己写之后的表现看,对网上的demo也没有学习。说明:1、此人对学习没什么热情。2、耍滑头,人品有问题。

因此我觉得完全没必要再留这个人,留他在团队里也是祸害。说句不好听的,如果有个这样的同事长期留在我们公司里,我都会怀疑公司靠不靠谱。
102516949
2015-05-25 00:18:32 +08:00
支持楼上说的,最讨厌刷滑头,投机取巧的了
xinxu
2015-05-25 00:21:50 +08:00
不肯尝试看英文会很发展的,还是算了吧
ashamp
2015-05-25 00:21:59 +08:00
我很好奇现在iOS都紧缺到什么程度了,招人的时候在干什么?顺便,能不能透露下该员的薪资?
ashamp
2015-05-25 00:26:20 +08:00
@banxi1988
1年开发经验:这个不可能!他的意思估计是知道iOS开发算起1年
git不会用:git很难没?1天最多2天学不会就说明学习能力太差,你等着被坑吧
zonghua
2015-05-25 00:40:53 +08:00
@mengzhuo 你说的东西我都知道,但是我我就还不能做出一个完整的系统。
BB9z
2015-05-25 00:49:57 +08:00
@adjusted 摸摸脑袋,你可以自学的。
zdkmygod
2015-05-25 01:08:00 +08:00
@ashamp 又开地图炮,个人觉得git蛮难学的。
nikolai
2015-05-25 02:03:43 +08:00
好奇薪资 +1
likaci
2015-05-25 08:26:05 +08:00
@lijianying10
哭了的同事是女的还是男的?

@banxi1988
好奇薪资 +2
init
2015-05-25 08:43:55 +08:00
作为一个新人加彩笔我想说两句:

说真的关于新人不会用谷歌真不是什么大事, 我旁边的就不用照样能解决问题, 重要的是这个新人有没有积极去解决问题的想法, 诚然很多程序员不喜百度, 但是也总归是能百度出点东西的, 问题并不是只能谷歌出来你说是不? 在有你说他有开发经验, 从我个人看你介绍他的这一面看, 跟本看不出有开发经验, 类都不会?恩? 你新手不会新手到这样吧, 就拿我来说 我工作时间也不长, 公司就职就直接发的文档说你不会就问吧, 我们组就3个人啊其中一个还是是cto, 我是硬硬的逼着自己看文档啊都是英文的不过看看就睡着了。。 现在虽然是有点进步但是还是差得远, 我觉得你可以和我做下比较,我学c++的至少比你ios开发难点吧, 而且我是刚毕业, 和我比并不是说我多优秀但是至少我这个做事的方法和态度还是比较正确的, 上班之初还谷歌了很多业余问题比如《如何更快上手工作》《如何更好看工程代码》《看工程代码有哪些软件》等等。 我觉得笨不是难事,但是没有一个正儿八经的态度确实是个大问题。 如果认认真真学3个月(试用期)确实会有长足的进步的, 真心不愿让他干就换个人, 地方再小也有人可找。
easynoder
2015-05-25 08:44:44 +08:00
都不容易哎。
yautou
2015-05-25 08:48:02 +08:00
哈哈,一开始点进来的时候,想着说楼主不担心员工也逛V2嘛,看完觉得我的担心完全多余~
为swift、autolayout点赞~
ant_sz
2015-05-25 09:19:17 +08:00
我觉得招员工并不是招学生来培训的。而且就算是很多培训班也是有入班门槛的。如果判断确实没有什么潜力而现在的水平也比较差,应该果断的拒掉。我觉得这不是一个人情的问题,是公司现在员工的义务。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/193373

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX