Category Archives: Uncategorized

[读书笔记]图解CIO工作指南-工作职责和工作领域

CIO工作职责 在企业经营和业务运作中推进IT运用,成为企业经营层和IT之间的沟通桥梁 要求具备沟通能力、领导能力、协调能力,以及对业务的深入理解 实现形式: 成立CIO办公室,为CIO决策提供所需信息,准备与业务、IT子公司的协同工作; 可以是IT部门内部领导兼职的虚拟组织。 2. 统管IT部门和信息系统 擅长IT实务的管理者,具备构建、维护复杂系统的能力,同时能正确判断突发问题的风险并解决问题。 常见的方式是CIO负责沟通,其他管理负责人负责此职责(美国企业中的CTO职责) 工作领域 战略、治理 与企业经营者一起制定符合企业战略的IT战略,并确定实现该战略的治理机制 投资、成本 IT组织、人才 确定IT、业务、IT分子公司、外部供应商的职责和责任划分,在此基础上确定IT组织形态 同时制定IT人才标准,并努力获得和培养 资源管理 包含企业内部资源(人力、物力、资金)和外部资源(供应商、专家、外包服务商),建立外部资源管理框架 IT服务 包含应用系统的开发、实施、问题咨询和处理 IT风险 评估系统故障、停机、信息安全泄露的风险并建立对策 IT架构 根据企业经营和业务战略追求的商业模型,构思企业信息系统的整体结构,即IT架构,并建立起对应的管理框架

项目管理修炼之道-第七章 项目团队

团队角色必须齐全,人员可以兼职 架构师、开发人员、测试人员 技术文案、发布工程师 项目经略、业务分析师 团队凝聚力 如果大家有同一目标,彼此承诺完成相互依赖的工作,而且采用商定好的工作方式,这就是一个团队。 如果希望团队凝聚在一起,那么就帮他们制定一些只有共同工作才能完成的短期目标。 软件开发团队必备的工具 SCM-版本管理 DTS-缺陷跟踪 组织 大部分项目经理都工作于职能组织或矩阵组织,很少一部分在基于项目的组织工作。 职能型组织在项目中存在汇报关系和项目管理关系不一致的情况,项目会在不同的职能团队传递,项目经理难以评估和控制项目。 矩阵团队,会倾向于让成员同时参加多个项目,项目经理要说服只能经理认识到这种做法的不利之处。 项目经理要职能经理确认,对项目成员的表现进行反馈和评价。 多于6人的团队会自动拆分为几个小组, 项目经理如果管理超过9人的团队,每个小组需要指定技术带头人,协助项目经理管理规模过大的团队。 技术带头人:带领团队开发功能的人。 团队发展5阶段: 组建期 团队刚成立 激荡期 共同工作并彼此试探 规范期 行为意见达成一致 表现期 更加紧急的合作 终止期 项目完成,团队解散 项目经理在项目中的权力,取决于项目的战略位置,可以从了解项目状态的人数和级别来判断。 项目经理要树立权威,利用自己的影响力让人们完成你需要他们做的事情。 项目应在启动时配备需要的人员,每次人员变动都会对团队的工作效率产生影响。 项目中期因谨慎考虑增加新成员,向进度落后的项目增加人手,只会让项目更加落后–Brooks法则 项目快结束时应避免新增人手 项目的技能树 人际交往技能 倾听、谈判、写作 目标导向、了解团队成员、适应信息不足的情况 管理细节、解决问题的技巧 项目管理的功能性技能 项目的生命周期 日程规划、任务评估和安排 利用团队成员不全技术的不足 评估、管理风险 领域专业技能 业务领域的理解,有助于理解需求、划分优先级 了解IT系统的架构,有助于识别技术风险 工具和技术的专业技能 项目管理的软件、技能

技术选型要素及能力培养

技术选型三要素
一、技术
1. 取长避短
2. 关注发展前景
二、业务
初创期:灵活,适应业务的快速变化,如数据存储采用MongoDB
稳定期:可靠,如Twitter从RoR切换到Java
维护期:妥协,重点考虑历史代码迁移的成本
三、人
团队参与,个人决策。

在Mysql中模拟ROW_NUMBER, RANK, DENSE_RANK

从MariaDB 10.2.0版本,开始支持window类函数,但现在还不是正式版本,不建议在生产环境使用。 可以使用下面的sql语句,模拟ROW_NUMBER, RANK, DENSE_RANK函数的功能。这种写法不需要做表的自连接,性能会比较好。

Oracle中的Java调用

项目中碰到一个特殊情况,部分功能必须通过Java实现,记录一下在Oracle中调用Java的方法。 实时使用的时候要慎重考虑,是否需要这么复杂的方案。 方法一:在PL/SQL中直接写java源代码,适合简单功能的测试,毕竟在PL/SQL中写Java代码还是很麻烦的。 将java的功能封装成一个函数 调用函数 在user_objects可以查询到创建的java程序、编译后的CLASS 方法二:将java的class文件或jar包导入到数据库中 剩下的步骤同方法一

HTML5本地数据库功能测试

HTML5可以直接创建和访问本地的Sqlite数据,对于暂存一些业务数据应该是足够使用,可惜IE和Firefox都不支持,大大限制了实际使用场景。 下面是几个核心API的用法,并在Chrome浏览器下测试通过。 创建数据库和表 插入和查询数据

页面加载时间记录

在分析前端页面的加载时间,常用的工具就是浏览器自带的分析工具,如Chrome的开发者工具等,但这种方法只限于人工单次分析,无法大批量的采集数据。 传统的js脚本,必须在页面的各种事件进行埋点,与正常的业务功能可能会有较差,且取不到页面加载的过程信息。 Html5的Web Preformance API带来了全新的方法,包含的Navigation Timing API可以解决大部分的页面性能分析需求,对于IE浏览器需IE9及之后上版本才支持。 下图是页面加载周期中的各类事件触发顺序,可以选择自己感兴趣的时间点进行记录和分析。 下面是一个示例的使用方法,注意使用了定时器来获取数据,否则会取不到loadEventEnd的时间。 参考资料: Navigation Timing

从公司的基因谈互联网业务的转型

原文:为何微软和IBM都难以转型互联网? 文章中剖析了公司的基因,主要体现几个方面: 一、管理,成熟企业求稳健发展与业务创新的冲突,体现在流程控制、风险管理,薪酬管理等方方面面。 所有成功的企业,在经历了创业期、发展期后,很快就需要进入一个防范出现大问题、大错误,以稳定发展为主的管理模式,是无法给新业务提供空间的。任何一个大企业,其实在管理上,都难以说有活力,管理几千人,几万甚至几十万人,实际上需要把每一个人当螺丝钉去管理,否则一定会大乱。因此,在成熟企业里,大家讲的是风险控制,是流程规范,是人人防控。而对于任何一个新业务、新产品与新服务,在一开始,是不能讲严格与规范管理的,恰恰需要的是不讲流程规矩的快速反应,不断犯错,是人治,不是法治。但这都不容于一个规范成熟企业。 二、人,习惯于成熟业务的人,从思想意识和行为习惯上,是不满足创新型业务的要求,即使有新人引入,也会因环境不适应的问题难以成功。 在一个很成熟的企业里,经过多年的发展,物以类聚,人以群分,已经自我沉淀积累了一批有共同特性与文化的核心骨干,很难诞生适合新业务的人,即便花巨资引进所谓优秀的专业团队,最后也会很快因为管理方式、理念等不同,水土不服而夭折,更不要说扩大发展的问题 三、文化 文化是一只看不见的手,在企业的发展过程中,围绕创始人与核心骨干,逐渐渗透在企业的各个方面,大到管理的模式与理念,小到用人的类型、员工活动,无处不在。在这种企业里,一句无意或者有意的风险提示,往往胜过一颗勇敢的心。因为人的类型不同,文化理念上,更是会处处碰壁,无法融入。 文化是一个弥漫在空气中的东西,一时没有明显感知与不适应,但日复一日,怨气日盛,最后让新业务与新人类无法生存,自动放弃离开。 最后,文章给出的结论,想要参与新兴业务,最好就是资本运作的方式,收购、参股等。

oracle嵌套表测试记录

在数据库表,个别字段设置为嵌套表,实际使用的不多,看到SF上提问做的测试,先记下来备用。

oracle 12c之使用Restful接口访问JSON数据

1、安装补丁20885778 先关闭数据库和监听 安装补丁 验证补丁是否已经安装 2、安装SODA for REST 首先需要安装JDK 1.7或更高版本 使用RPM包安装完成后,更改环境变量,并切换到新安装的JDK 安装SODA 安装成功后,如果选择start in standalone mode选项,服务就已经启动了。 在数据库中启用ORDS功能 为测试方便,停用ORDS的权限检查功能 3、SODA的Restful接口测试 3.1 查询所有的集合 返回结果 3.2 增加books的集合 返回结果 无正文内容,状态码为201 Created 3.3 重新查询所有的集合 返回结果 3.4 创建单条记录 发送内容,POSTMAN中,选择RAW类型,格式为JSON(application/json) 命令行: 返回结果 3.5 批量创建 发送内容 返回结果 3.6 根据ID查询单条记录 返回结果 3.7 更新单条记录 发送内容 返回结果 正文无,状态码为200 OK 重新执行3.6的查询,返回结果为 3.8 在数据库中查询上述步骤插入的3条记录 查看表结构 注意:因表名称为小写,查询的时候表名称必须加双引号 3.9 删除单条记录 返回结果 [...]