架构/管理
文章平均质量分 83
关于程序生活,关于技术管理,关于升级打怪
疯人院的院长大人
喜欢学习研究。喜欢解各种疑难杂症,喜欢主动。研究领域:Android开发,性能优化,逆向开发,移动攻防。
展开
-
对于入门安卓的开发人员的建议
做了这么多年的开发,虽算不上资深,但作为一个工作多年创业多次的一个安卓开发人员,倒也有自己的一点见解。如遇到更厉害的大牛看到,还请多多指教。写这篇文章主要是给一些初级安卓开发人员的建议。每个人都会有自己的职业生涯,每个人的职业生涯又大不相同,每个人的精力,生活环境,背景的差异都会对每个人的成就有很大影响,所以一些术或者道的东西,并不适合每一个人,不过看到这篇文章算是缘分,就像铃木禅师提到的:对是佛,错亦是佛,既然这样,我就畅所欲言了。原创 2023-07-20 11:32:16 · 1002 阅读 · 0 评论 -
搭建本地AOSP Gerrit Server完全指南 (二)
本文在引导你如何将AOSP (Android Open Source Project)完整导入企业内部或个人Gerrit伺服器。AOSP包含近800个专案,要如何有效快速无误的将这些专案导入Gerrit对很多IT人员来说若不知方法会是很头痛的问题。本文是系列文的第二篇,本系列在介绍如何建立本地自有(local host) Gerrit Server并且将AOSP (Android Open Source Project)的原始码完整导入此Gerrit Server。翻译 2022-10-07 14:51:31 · 1781 阅读 · 2 评论 -
搭建本地AOSP Gerrit Server完全指南 (三)
本文引导如何从现有的AOSP Branch建立另一个Branch以进行AOSP的客制化,以便将企业及自身的技术知识管理及保留。本系列介绍如何建立本地自有(Local) Gerrit Server并且将AOSP (Android Open Source Project)的原始码完整导入此Gerrit Server。若你已完成了PART1(架设一个自有本地Gerrit Server)及PART2(将AOSP完整导入Gerrit Server)的工作后。翻译 2022-10-07 15:00:04 · 880 阅读 · 0 评论 -
搭建本地AOSP Gerrit Server完全指南 (一)
本文引导入如何从0到1,搭建一个专属自己的Gerrit伺服器(Gerrit Server)本文是系列文的第一篇,本系列在介绍如何建立本地自有(localhost) Gerrit Server并且将AOSP (Android Open Source Project)的原始码完整导入此Gerrit Server。文章分为三个部份,本文是第一部份,教导如何架设Gerrit Server,如果你已经很熟悉这个工作,可以直接跳至第二或第三部份。真正利用Gerrit来确保Code的品质并且保留企业内部技术。翻译 2022-10-07 14:42:05 · 1934 阅读 · 0 评论 -
Android App性能优化指南
在不同的 android 应用程序组件之间提供清晰的界限是至关重要的。当你需要添加、删除或测试对应用程序其他模块的修改时,它会派上用场。最后,值得注意的是,全球已经数字化,连接设备的数量正在以惊人的速度增长。与此同时,用户的注意力范围正在减少。保留它们的唯一方法是让你的移动应用程序高效运行。此博客描述了提高 Android 应用程序性能的方法。这些策略结合起来可以显着减少 CPU 执行的工作量和应用程序消耗的内存量。原创 2022-10-02 15:50:04 · 708 阅读 · 0 评论 -
程序员Or自媒体
自媒体发展到现在,已经有好多个年头了,有一些人做垮了,有一些人一直坚持到了现在,还有一些人到现在都还在观望,比如我。对于程序员来说,输出不难,比如写文章,如果愿意写第一篇后面继续写上去很容易,这就和写代码一样,没有什么难的,难的是录视频或者搞直播。几年前我去动脑学院当讲师,那是我下决心要从一个coder转行做一个教书育人的老师。刚开始做的前两个月对我来说简直是煎熬。首先直播这个事,虽然不需要露脸,但是他需要你说话,而程序员多半是讷于言辞,特别是需要于学生互动,哪怕你看不到,但是你能够想到下面有乌泱泱的一群原创 2021-08-16 18:06:14 · 757 阅读 · 0 评论 -
杰出程序员的101个习惯(二)
别迷恋你的代码仅仅因为代码是你之前精心写的并不意味着你需要在情感上迷恋它。虽然没有人喜欢把他们的工作成果扔掉,但是代码有一个生命周期,因此没有必要限制其范围,该删就删,该改就改,杀伐果断;让你的团队作为你坚强的后盾好的团队互相支持。这为尝试新事物提供了一个安全的空间,而无需担心会被人算计。在社区中寻找灵感在你喜欢的行业中找到一些人。它会激励您继续进行项目或尝试新事物。重视您的工作无论您有多少经验或职称是什么,您的工作都是有价值的。给它应有的价值。禁止分心关闭Slack通..原创 2021-01-28 15:40:20 · 253 阅读 · 0 评论 -
杰出程序员的101个习惯(一)
善于谷歌搜索成为一名程序员,就是要学习如何搜索问题的答案。通过有效地学习Google事物,您将节省大量开发时间。降低承诺和超额交付最好让您的团队知道一项任务将需要三周时间,并且要在两个星期内完成任务,而不是相反。通过减少承诺和超额交付,会让你看上去成为一个更靠谱的人并和别人建立信任。这个在国内很难做到,特别是前端开发人员,但是这点确实是非常有必要;友善对待设计师,他们是你的朋友设计师为用户的痛点提供解决方案。向他们学习,并共同努力以创建有效的产品,这是程序员欠缺的;寻找导师找一..原创 2021-01-28 15:06:28 · 558 阅读 · 8 评论 -
价值百万的流量思维
分享一个自己的顿悟,不一定正确,有点长,可以当小说看。本文系原创,如果想要转载请提前获得本人同意,否则追究法律责任。互联网圈有两种玩法一种流量一种产品,虽然同属于互联网但两种玩法截然不同,产生的效果也大相径庭。大部分互联网人知道产品的玩法,当年最火的人人都是产品经理就是这种思维趋势下的产物,概括来说就是做一个用户喜欢的产品,不断的打磨不断的精进然后成为爆款,这也是前几年的主要玩法。它的优点是可持续性缺点是沉没成本太大短时间看不到收益。而流量思维的玩法更像是一种投机取巧的方法所以一般人不会注意但它原创 2021-01-03 15:39:48 · 624 阅读 · 0 评论 -
DockerCompose一键部署LAMP及其原理解析
考虑到要将生产环境和开发环境保持一致,我决定使用docker方式部署我得开发。最终的效果当然是支持自动化部署并且能够保持开发端的环境和运行服务器端保持高度一致;我得运营服务器是阿里云,为了方便以后参考,我决定把阿里云服务器重装系统,重新来过;安装Docker安装前最好先确认下你的Centos是否支持安装docker,因为Docker 要求 CentOS 系统的内核版本高于 3.10;$ uname -r 更新系统到最新(可选)$ sudo yum update卸载旧版本(如果以前原创 2020-07-22 16:38:11 · 1662 阅读 · 0 评论 -
互联网人提高效率必备软件合集
很多的时候我们解决不了问题,只是因为没有找到对的工具,实际上,很多好的工具就在那里,只是你不用而已。这点上,信息壁垒是一个很大的原因,因此我希望兄伙伴们多出去走走,不要只是局限在一个圈层;原创 2020-09-30 16:35:44 · 2181 阅读 · 0 评论 -
[Google标准文档]如何做好代码评审
如何进行代码检查本节中的页面包含基于长期经验的代码审查最佳方法的建议。所有这些页面代表一个完整的文档,分成许多单独的部分。您不必阅读所有这些页面,但是许多人发现阅读整个文档集对他们自己和他们的团队非常有帮助。The Standard of Code Review在代码审查中要寻找什么?在评审中导航CL代码审查速度如何编写代码评审注释在代码审查中处理驳回另...翻译 2019-09-19 17:34:28 · 1663 阅读 · 2 评论 -
Git版本提交上去被打回怎么回滚
在一个项目比较大的时候或者项目在现场版/使用版本上做修改的时候,就需要非常慎重了,一方面可能新来的开发人员不了解代码结构去做修改,很可能增加新的bug甚至导致应用崩溃,所以很多公司会加入审核机制,如果审核不通过提交就会被打回,那么打回后Git怎么回退到原来的状态呢?首先进入到项目源码目录,我用的AndroidStudio开发,在terminal下自动进入的是项目源码目录:#查看当前提交版本确...原创 2018-10-18 10:17:46 · 3751 阅读 · 1 评论 -
【代码迁移】Git动态更换版本仓库
我们在开发过程中,前期一直是在每个版本仓库中开发和管理,而后面因为业务需要需要换远程仓库;这种情况下大家会怎么做呢?我相信大部分人的做法是直接把代码copy到新的远程仓库上面去,重新开始;当然这也是一种做法,但是这样做有点不尽如人意,因为在很多时候我们不希望丢失掉以前的Commit,不然之前的版本也没必要用什么版本仓库;那么,除了另起炉灶还有什么好的办法呢?自然是有的;现在我带领大家来...原创 2018-09-17 16:30:41 · 3329 阅读 · 0 评论 -
Repo,git,svn代码回滚,强制同步
Android ROM开发经常使用repo sync。有时候有些project因为调试的原因做了一些改动,sync下来就和远程不同步了。 参考了repo的代码(.repo/repo/subcmds/sync.py)里有个参数: p.add_option(‘-d’, ‘–detach’, dest=’detach_head’, action=’store_true’,翻译 2017-07-19 08:43:17 · 6677 阅读 · 0 评论 -
判断手机号是否可注册淘宝
当我们因为某些原因换手机号时,在各大网站绑定的手机号可能需要更换,像淘宝这种以手机为安全凭证的网站,所以我特意摸索出了一个是否能注册淘宝的方法。步骤:1.登录淘宝——〉.我的淘宝——〉.账户设置——〉手机绑定——〉更改号码——〉输入你要查询的号码点击下一步,如果已经注册则会提示,否则不提示。这样我们就能在买卡的时候避免买到注册了淘宝的手机号。...2014-11-24 08:49:39 · 3510 阅读 · 0 评论 -
我理解的互联网思维
我对互联网思维的理解 几个月前,出于好奇与兴趣,我接触了互联网思维,前几个月,互联网思维被炒的热火朝天,到处都在说自己是互联网思维,互联网思维是什么呢?下面我给出我的理解,当然,对于一个入行不久的我来说,我的理解很多地方可能会不对,还请各位看官不吝赐教。 我觉得互联网思维第一点就是要有特色,拿的出手的特色,前些年我几个创业成功的朋友和我说,你必须要有自己的性格,要么低声下气,要么...2014-11-06 17:02:25 · 1664 阅读 · 0 评论 -
不只是程序员(一)关于人脉
不只是程序员(一)关于人脉对于我们这些程序员,我觉得除了学习和工作以外,有很多我们应该关心的内容,我是大三的学生,身边有每天拼了命在准备考研的,有除了休息就是写代码的,也有实在没事干的,我觉得大三不应该是这样的,很多人对我们这个专业持悲观态度,说我们这个行业竞争太大,当个程序员没前途,当你想说你以后会成为高层的,想必说出这话的人一般会引来被人的嘲笑,当高层,谈何容易,创业,谈何容易,虽然我...2014-05-07 21:47:50 · 253 阅读 · 0 评论 -
如何快速对搜集到的信息进行分类
生活中我们会遇到很多很多信息,而且在信息化社会中,我们会遇到各种各样的信息,对信息的分类变得尤为重要,如果能在信息分类中找到自己的方法,那么就会比别人更快成长,得到更多的机会;今天的学习笔记我想通过代码分享给大家,不知道大家能不能get到我的点,这篇文章来自于偶然在知乎上看到的一个问题:个人知识管理如何做好分类管理,便于后面的学习利用?里面有两张最重要的图片,这里贴出来分享给大家,而我的笔...原创 2018-10-13 14:10:11 · 2766 阅读 · 0 评论 -
产品管理实干课程 第1期
声明:该栏目的核心内容均来自莫老师的AskMo,大家有兴趣可以关注莫老师的公众号“创新实干派”。我个人觉得这个公众号里面的内容相当号,因此希望在记录的同时也让自己能够学习到关于产品的一些核心理念,同时希望通过这些文章的方式让更多人从中受益;这里给大家推荐一个丛林法则,也就是营造一个公平的环境,让产品在公司内部相互竞争,竞争成功的产品,他会获得公司的优质资源。这样做虽然对于一些产品来说会显...原创 2020-02-15 17:32:29 · 214 阅读 · 0 评论 -
如何提高创业团队的软件开发效率
如何提高软件开发效率是很多软件项目负责人很关心的问题,本文从实际出发,给出一系列可行的方案给创业团队参考,给创业团队让提供以一种接地气的提高效率的方法。网上很多的介绍如何提高效率的文章都址是简单的从书本上抄取,并不一定能够解决实际问题,这边文章是作者从公司内部分享会中整理的来,希望给读者一种解决问题的思路方法,帮助大家打造更优秀的开发团队...原创 2020-01-29 22:55:21 · 890 阅读 · 0 评论 -
公司发展过程中的软件质量管理
创业初期,公司的核心资产首先是人,然后是现金,最后才是代码,因为前期来说能搞出东西才是最实在的;创业中期,公司的核心资产首先是现金,然后是代码,最后才是人,因为活下去才是最重要的,如果代码没有管理好,最后也容易死掉;创业后期,公司的核心资产是文化,我理解为各种原则,什么该做什么不该做,原则可以规划代码,可以规范员工做事方式,也可以尽可能地保护员工;原则因为足够简单,所以容易传承,随着公司做大,最终形成企业文化;原创 2019-10-12 17:40:39 · 625 阅读 · 0 评论 -
全栈工程师养成之路
本文介绍的东西很多,基本是涵盖了安卓开发人员进阶的所有必备技能,以及生活上的一些必备技能,成为管理者需要了解的知识,包括以后大家要创业还是当老板干啥的,都会提到;如果没有涵括到表述不完全或者缺斤少两的,麻烦大家在底下留言,后面我一定补上;在看这篇文章的时候我希望大家放正心态,并不是说看完这篇文章你就能成为一名大牛了,能力的成长是一个日积月累的过程,如果没有长时间的积累,看了再多的方法也是白搭;成长最快的方法,就是选对一条路,扎扎实实做下去;原创 2018-10-20 14:10:41 · 7706 阅读 · 5 评论 -
【疑难杂症】解决了这些问题,你就迈进了安卓高级工程师门槛
或许由于经历不同,很多的开发者并不再怎么关心性能优化和代码质量这一块,而在一个真正用心做产品的公司,在产品交付前进行的集中测试会暴露出来非常多平时难以解决的问题;主要原因是这些原因在一开始会被认为太难搞定而且在当时来说并不是那么重要,最后要到发布了,由于时间紧凑而且自身积累不够,导致很多疑难杂症得不到解决;一般这个时候公司会着急招聘一个看起来很资深的程序员来解决这个问题,不过在我看来这种选择代价...原创 2019-04-03 09:37:06 · 2072 阅读 · 0 评论 -
如何开发一款报表引擎(一) 框架梳理
一般来说,对于一个新事物,我的通用做法是首先冷静下来,然后思考一下这个事情的可行性,这个可行性分析就对应我的上一篇文章,我把这个框架梳理出来之后我就知道我应该如何技术选型以及进行架构搭建,这对于我把我整体进度很有帮助,因为我是一个人开发(至少一开始一定是),我们知道一个人开发的最大好处是节省很多的沟通时间(实际上团队合作开发的时候有很大一部分时间消耗在团队沟通上);但是弊端就是在我执行开发任务时,有的时候会陷入混沌的思维状态,这个时候会忘记自己要做什么,做到哪一步了,这种情况在加班的时候发生频率更高,所以我原创 2019-04-26 18:23:37 · 5527 阅读 · 0 评论 -
如何开发一款报表引擎(二)技术节点分析
有兴趣的朋友可以先看上一篇文章,看完之后再看这篇文章会更加熟悉一些;上一篇梳理了整个的框架搭建,当然了都说不上专业,这些文章一方面是给自己看的,另外一方面如果你觉得有用那能帮到你那当然就更好了;一般来说,对于一个新事物,我的通用做法是首先冷静下来,然后思考一下这个事情的可行性,这个可行性分析就对应我的上一篇文章,我把这个框架梳理出来之后我就知道我应该如何技术选型以及进行架构搭建,这对于我把我整体...原创 2019-05-05 15:08:20 · 1551 阅读 · 0 评论