当前位置:  编程技术>移动开发
本页文章导读:
    ▪血泪史:七种IT出错让你直接走人        血泪史:七种IT失误让你直接走人 IT人士的真实故事:搞出大麻烦,旋即遭解雇 如今想找一份理想的IT工作并不容易,但丢掉一份工作却非常简单。 导致自己被炒鱿鱼的原因很多,无论是没.........
    ▪ setContentView剖解        setContentView剖析1、setContentView的作用是将View加载到根view之上,这样当显示view时,先显示根view,然后在显示子view,以此类推,最终将所有view显示出来。 2、setContentView必须要放在findviewbyid之.........
    ▪ IT界那些性感的让人尖叫的软件工程师       IT界那些性感的让人尖叫的程序员 HelloFax程序员尼克·马拉(Neal O'Mara) 马拉十分聪明,7岁就开始编程。他在巴克纳尔上学,住在旧金山,是在线传真服务公司HelloFax的程序员。 谷歌副总.........

[1]血泪史:七种IT出错让你直接走人
    来源: 互联网  发布时间: 2014-02-18
血泪史:七种IT失误让你直接走人

IT人士的真实故事:搞出大麻烦,旋即遭解雇

如今想找一份理想的IT工作并不容易,但丢掉一份工作却非常简单。

导致自己被炒鱿鱼的原因很多,无论是没能尽到保护雇主数字资产的义务、或者是滥用手中的权限以达到自己的邪恶目的,我们都将因此跟自己的职业生涯挥手道别。在错误的时间大放厥词或者在正确的时间闭口不言都会造成严重后果。打探老板的隐私、向雇主说谎或者由于自身的直接原因造成数百万美元的停机损失,这一切疏忽都将把我们的仕途引向深渊。

在某些情况下,每人能找到正确的处理方式。然而某些失误却会引发致命的影响,就算没有因此丢掉工作、大家在余生中也不用指望获得提升了。

在本文中,我将与大家分享七个发生在IT人士身上的真实故事——当然,他们都已经被扫地出门。为了保护他们的隐私,我们将以化名相称。但最重要的是,千万不要让他们的悲剧发生在您自己身上。

致命IT失误一:疏于备份

这是某个周四的夜里十点半,Eric Schlissel的电话响了起来。电话那边响起了某家中型服装制造商的首席运营官的声音,而且在此之前Schlissel从没跟他打过交道。这位运营官在谷歌引擎上找到了Schlissel的电话,而他现在听起来似乎有些狂躁不安。他车间中的ERP系统受到了病毒的破坏,而他需要在第二天早上之前保证一切恢复正常。

作为管理服务商GeekTek IT Services公司的CEO,Schlissel跳上自己的车子全速赶往位于洛杉矶的这家服装工厂,打算亲自处理这一紧急情况。

“经过三分钟的尝试,我发现自己根本没法正常登录,因为服务器上的内容已经荡然无存,”Schlissel表示。“所有数据文件、数据库以及ERP软件都不见了踪影,我只能实言相告——这根本不是病毒造成的。有人把系统彻底清空了。”

事实证明,是某位心怀不满的IT承包商以此为手段对这家服务厂商进行报复,但更糟的消息还有后面——整套备份机制已经很长时间没有正常运作了。Schlissel所能找到的最新数据已经是一年半之前的,这使得备份内容几乎毫无价值可言。

这家服装厂商的最后一线生机来自财务部门。某位负责会计工作的员工一直对IT技术持怀疑态度,因此将所有往来记录都抄写在一份纸质文件当中。Schlissel和他的团队花了六个月时间才会所有数据恢复到服务器当中。

“这是一家总值达1000万到1200万美元的企业,而这次事件给他们造成的损失达到约200万美元,”他解释称。“这也是我职业生涯中所遇到过的最惨烈的IT事故。”

负责这家工厂备份工作的IT人员完全把自己的任务抛到了一边,于是乎他在第二天就遭到辞退。

备份机制未能正常运行的状况极为常见,而这种失误对于个人职业生涯来说无疑是致命的,Schlissel指出。

“我们与新客户接触后的第一件事就是检查其备份情况,”Schlissel指出。“这是IT领域的一类经典事故,我们常常提醒客户,这绝不是危言耸听、而只是确保其固有资产得到严格保护的必要步骤。”

故事寓意:备份在手,万事无忧。

致命IT失误二:探听老板的隐私

就在几个月之前,南加州某家中型医疗保健供应商的CFO给Oli Thordarson打来了电话。作为高级网络管理服务企业Alvaka公司的CEO,Thordarson和他的团队经常需要以临时CIO的身份为小型企业提供服务、负责处理证据调查工作。

这位CFO告知Thordarson,他怀疑有人在偷偷查阅他的电子邮件。事实上,他已经猜测了嫌疑最大的对象:IT主管。

这位CFO表示,在过去两年中,IT主管多次针对他根本没有接触到的业务发表意见。Thordarson告诉我们,“这位IT主管似乎比企业内的任何一位成员都更了解当前的业务走向,这实在是个极大的讽刺。”

Thordarson和他的一位技术人员修改了一项实时网络探测指示器,这样一旦有人阅读了那些自己本不该看到的邮件,指示器就会悄悄发送警示信息。几天之内,Alvaka发现IT主管确实在查阅CFO的邮件——甚至连CEO、董事长以及其他高层的往来信息也未能幸免。而就在第二天,IT主管开始查阅Monster.com网站上的招聘资料。

Thordarson补充称,这类问题的出现频率远高于大家的想象。在Alvaka接触过的企业中,有约三分之二发生过技术人员阅读雇主邮件的状况,其中包括高层管理者的信息。

“他们这么做是只是为了更好地提供支持服务并忘记撤销自己的操作,还是在刻意窥探老板的隐私?”Thordarson指出疑问。“我们也弄不清楚。”

故事寓意:这是个傻瓜如何快速丢掉工作的故事,别无其它。

致命IT失误三:掩盖自身罪行

每个人都会或多或少犯下一些错误。一家大型金融机构的IT人员打算更换一套陈旧的存储阵列托盘。一位工作人员与供应商取得了电话联系,并确认货品已经发出。然而供应商处的初级销售人员发错了托盘型号——该托盘只适用于新机型,无法与旧机型相兼容。

由此引发的阵列故障带来了灾难性的后果,整家银行的业务系统在近一周时间内始终处于脱机状态,造成高达数百万美元的交易损失。手足无措的管理者只能打电话给Anthony R. Howard前来进行故障排查。

根据Howard(他是畅销书<看不见的敌人:黑狐>的作者,同时也担任财富五十强企业及美国军方的独立技术顾问)的分析,这家金融机构共存在三大问题。当然,供应商发错设备也是原因之一;但另一大失误在于,银行的IT人员没有静候厂商的专业技术人员前来安装、反而决定亲自动手。

第三个也是最严重的问题在于,几乎每个与这次事故相当的人员都选择了谎报军情,Howard告诉我们。只有一位职员勇于坦言当时的真实情况。

“当IT人员发现自己的工作可能命悬一线,肯定会想办法保护自己,并把责任推到供应商方面的技术支持人员头上,”Howard指出。“银行内部团队在完成调查后发现,只有一个人勇于承认现实,而他也是惟一一位在事故后保住了工作的员工。”

故事寓意:也许失误本身并不会让你失去工作,但一味掩饰会让情况变得更糟糕。

致命IT失误四:色情内容

几年前的一个深夜,某位效力于财富百强企业的网络管理员想找出一份空白的备份磁带。他从某位高级系统管理员的抽屉里随便拿出一盘并塞进驱动器——但令人意外的是,磁盘里已经塞满了数据。到底是些什么内容?好奇的他打算一探究竟。

相信大家已经猜到了问题的答案。

“里面塞满了色情内容,”Foreground Security公司总裁兼CIO Dave Amsler告诉我们,当时正是这家公司介入到事件的调查当中。“我们当时检查了这位管理员抽屉中的其它几十盘磁带,但没有发现其它违法内容——谢天谢地。不过就算是这样,该管理员也被当场辞退。”

但在Foreground为各大美国企业及政府机关提供安全管理服务的十四年中,这还不是Amsler亲身经历的最糟糕的情况。Amsler表示,至少有十家客户打电话请他去处理与色情内容有关的事件。有两次,他甚至发现IT管理者在企业服务器上运营成人网站。在这些案例中,管理员们似乎乐于在工作之余利用企业资源为自己安排一点特殊爱好。

色情过滤器之类的机制根本起不到任何作用,因为IT人士们很清楚如何把它们关掉。即使企业拥有严格的管理政策以及落实到位的过滤机制,高层管理人员仍然能利用自身权限从中找到可乘之机,Amsler表示。

“有时候这种情况也属必然,”他补充称。“一般来说,高级管理员有资格访问那些长期处于封闭状态下的站点以完成工作,但这并不代表他们可以彻底摆脱监控机制的掌握。即使是最善良的员工也可能在缺乏监管的情况下做出令人意外的举动。如果管理员意识到自己正处于监控之下,其行为必然会得到很好的约束与规范。”

致命IT失误五:保守错误的秘密

直到最近,Dana B.一直在某家主要美国互联网供应商担任网络工程师。有一天,一位前任同事被要求变更一部分生产路由器的IP地址。由于这些变更可能影响互联网订阅服务,因此需要将这些服务暂时切换为离线状态——互联网服务供应商通常会在深夜执行这类变更。

但这位工程师不想把大好夜晚浪费在公司里,因此他在下班回家之前就提前改变了IP地址,然后关掉了手机——这样就没人能破坏他美好的业余时间了。

这只是他犯下的第一个错误。更糟糕的是,他一直拒绝对自己的操作内容进行记录,Dana表示。这意味着其他员工根本不知道他到底使用了哪些IP地址。

在他离开之后,工作人员发现接口无法正常连通,因为其原有IP地址已经被占用,这直接导致近5000项订阅服务无法访问互联网。而其他工程师给他打电话希望弄清楚问题到底出在哪里时,却发现这家伙关掉了手机。

“我们组织了一个由五位工程师组成的网络技术团队,花了好几个小时才发现并成功解决了问题,”Dana回忆道。“第二天,他像平常一样走进办公室、又很快被赶了出去。”

故事寓意:有些秘密最好早点公诸于众。

致命IT失误六:严酷无比的灾难

有些人以为自己已经针对可能出现的状况做好了充分准备。某家从事高度监管行业的企业曾花费数百万美元建立起一套全面的灾难恢复计划,甚至包括一家容纳着数百套虚拟机及千兆以太网连接的专用故障转移数据中心。

但一次意外的网络中断彻底切断了主数据中心与故障转移中心之间的连接通路,在整套灾难恢复身上投下的巨资也瞬间打了水漂。

“CTO并没有确保灾难恢复计划奏效的把握,因为技术人员从来没有进行过测试,”SunGard Availability Services公司恢复服务产品管理副总裁Michael de la Torre解释称,这家公司在本次事件中负责为当事方提供灾难恢复策略。“相反,他坐等了一天多,希望线路能被尽快修复。在此期间,所有用户都面临脱机状态,员工无法通过电子邮件进行交流或者访问数据文件,这直接导致企业的信誉受到严重冲击。”

此后不久,这位CTO的职业生涯也随着此次计划外停机而一同陨落。

超过半数的企业在部署灾难恢复计划后并未加以充分测试。即使是那些确实组织过测试的企业也会在灾难恢复工作的人员、流程及必要工具等领域平均犯下五种错误。

灾难恢复既不令人振奋也非易于现实,但却扮演着决定企业命运的重要角色,他补充称。

“成功保护业务流程未必能让管理者平步青云,但一旦发生严重事故,我们很可能立刻被扫地出门。”

故事寓意:上阵之前最好先试试自己的武器灵不灵光。

致命IT失误七:向权贵进言

十年之前,Bob(化名)为一家在全国拥有超过一千家网点的发薪日贷款机构工作。(Bob本人要求在这个故事中隐瞒他的真实姓名)。他曾被任命为ASP系统的架构调整负责人,这套运行在各个网点本地服务器中的系统负责处理历史数据。但在着手工作之前,他必须首先通过将各网站中的几十套Web法律规程转换到数据库中来证明自己的技术实力。

一个周五的下午,也就是他接手这个工作岗位的半年之后(试用期结束的两周之前),IT副总裁在每周员工会议上提出了他对公司提出的五年远景规划。在副总裁两个小时的演讲中,Bob归纳出了四条要点:

  • 拼搏到底
  • 修复错误
  • 保持良好现状
  • 不要引入新技术

“这实在是把我难倒了,”Bob无奈地表示。“在我看来,‘如果按这套思路来搞,公司请我来干嘛?’他们每年要花数百万美元来维护由五十多位不同开发者所创建的网站——说实话,这网站简直是千疮百孔。”

就在当天晚些时候,Bob走向副总裁的办公室并关上房门。

“他问我,‘你觉得我的观点怎么样?’”Bob告诉我们。“我说,‘坦率地说,先生,这简直相当于没有观点。您所表述的只是一套维护规划而非远景预期。’”

副总裁对他的坦率表示感谢,并称赞了他的勇气。然而当新的周一来临,Bob步入自己的办公室时,却发现自己已经丢掉了工作。

“我边吹口哨边开车回家,”他表示。“我从来没像现在这样为自己的失业感到庆幸。我决定永远不再把自己的职业前途押在金玉其外的混蛋身上。这次经历之后,我决定创立自己的事业、并一直奋斗至今。”



    
[2] setContentView剖解
    来源: 互联网  发布时间: 2014-02-18
setContentView剖析
1、setContentView的作用是将View加载到根view之上,这样当显示view时,先显示根view,然后在显示子view,以此类推,最终将所有view显示出来。

2、setContentView必须要放在findviewbyid之前,因为view在加载之前是无法引用的。

3、setContentView最本质的作用是为要显示的view分配内存。

4、activity、window和view之间的关系:

 而当我们运行程序的时候,有一个setContentView()方法,Activity其实不是显示视图(直观上感觉是它),实际上Activity调用了PhoneWindow的setContentView()方法,然后加载视图,将视图放到这个Window上,而Activity其实构造的时候初始化的是Window(PhoneWindow),Activity其实是个控制单元,即可视的人机交互界面。

打个比喻:

Activity是一个工人,它来控制Window;Window是一面显示屏,用来显示信息;View就是要显示在显示屏上的信息,这些View都是层层重叠在一起(通过infalte()和addView())放到Window显示屏上的。而LayoutInfalter就是用来生成View的一个工具,XML布局文件就是用来生成View的原料

activity调用setContentView其实是调用window的方法
在activity中:
    public void setContentView(int layoutResID) {
        getWindow().setContentView(layoutResID);
        initActionBar();
    }

在PhoneWindow类中:
    @Override
    public void setContentView(int layoutResID) {
        if (mContentParent == null) {
            installDecor();
        } else {
            mContentParent.removeAllViews();
        }
        mLayoutInflater.inflate(layoutResID, mContentParent);
        final Callback cb = getCallback();
        if (cb != null && !isDestroyed()) {
            cb.onContentChanged();
        }
    }

从上面代码可以看出,最终的根View就是mContentParent,而mContentParent就是installDecor()生成的DecorView。

5、如何在一个activity中显示不同布局?

1)使用LayoutInflater inflate两个view:v1,v2
2)使用setContentView(View view)方法设置这两个view
具体讲解在http://blog.csdn.net/yanzi1225627/article/details/7802402


    
[3] IT界那些性感的让人尖叫的软件工程师
    来源: 互联网  发布时间: 2014-02-18
IT界那些性感的让人尖叫的程序员

HelloFax程序员尼克·马拉(Neal O'Mara)

马拉十分聪明,7岁就开始编程。他在巴克纳尔上学,住在旧金山,是在线传真服务公司HelloFax的程序员。

谷歌副总裁玛丽莎·梅耶尔(Marissa Mayer)

梅耶尔1999年加盟谷歌,负责地理位置和本地化服务,是谷歌首位女性工程师。十多年来,她帮助谷歌改进搜索界面,为网站添加100多种语言,并发布超过100项新产品和功能。

GirlDevelopIt网站联合创始人萨拉·吉普斯(Sara Chipps)

吉普斯认为,编程不仅是件很有趣的事情,它还可以增加女性的吸引力,所以她希望有更多的女士加入这一行业。

为了使更多的女性加入到编程队伍中来,吉普斯创建了GirlDevelopIt.com网站。吉普斯还致信年轻女性,希望她们考虑在IT界工作。吉普斯表示:“我早上穿着连衣裙上班,到公司后就坐下来进行编程,我感到很满足。”

问答网站Quora联合创始人查理·齐沃(Charlie Cheever)

齐沃是问答网站Quora的联合创始人,也曾是Facebook的工程师和经理,负责Facebook Connect服务、Facebook平台创意。齐沃最终离开了Facebook,创建了自己的公司。

Convore创始人兼CEO莉娅·库尔沃(Leah Culver)

库尔沃是一位知名美女程序员,她在自己的个人网站中写道:“我对开源代码和开源规范充满了兴趣,特别是OAuth开放标准和OEmbed规范。我喜欢尝试使用新的编程语言并开发了一款iPhone应用。”

Contently程序员戴夫·高柏(Dave Goldberg)

高柏今年29岁,是Contently公司的一名程序员,Contently主要为那些需要内容服务的客户提供专业自由撰稿人。高柏目前还是单身,他最喜欢在MIPS架构体系下进行编程。

Art.sy程序员丹尼尔·杜布罗肯尼(Daniel Doubrovkine)

杜布罗肯尼是艺术品购买网站Art.sy工程部门主管,他的办公区同他一样充满吸引力。

问答网站Quora工程师特雷西·周(Tracy Chou)

周是Quora的软件工程师,拥有斯坦福大学电气工程学士学位和计算机科学硕士学位,她也喜欢杯形糕饼和可爱小动物。

谷歌高级软件工程师迈克·里博(Mike LeBeau)

里博领导开发了语音搜索应用程序Voice Actions,该程序在去年发布,它允许用户通过声音控制手机搜索。也许得益于大男孩的外表,谷歌让他成为了Voice Actions推广视频中的主角。

手机服务商Foursquare程序员乔恩·霍夫曼(Jon Hoffman)

从霍夫曼的Facebook图片上来看,他适合徒步旅行或马拉松。霍夫曼毕业于卡内基梅隆大学,在进入Foursquare工作之前,他是高盛的一名副总裁。

Scholastic用户体验主管克里斯丁·文森特(Kristin Vincent)

文森特的个人经历非常丰富,在进入Scholastic工作之前,她是Barnesandnoble.com网站信息架构高级经理,也曾是IBM信息开发人员。

Bit.ly首席科学家、HackNY联合创始人希拉里·梅森(Hilary Mason)

梅森是纽约程序员社区的领导,也是非盈利组织HackNY的联合创始人。她还教学生怎样计算欧几里得距离。

团体支付平台WePay高管雷斯莫斯·勒道夫(Rasmus Lerdorf)

勒道夫是PHP语言的创始人,目前在团体支付新兴公司WePay工作,领导该网站的应用程序接口(API)的研发工作。

Foursquare软件工程师库劭·戴夫(Kushal Dave)

在加盟Foursquare之前,戴夫曾是谷歌纽约和IBM波士顿的软件工程师。他不仅善于编程,还对于当前的新闻业进行了批判。



    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android实用的代码片段 常用代码总结 iis7站长之家
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3