首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

需要学习的是编程,而不是编程语言

原翻译传送门is here 你可能在学习编程语言而不是编程本身 别对学习计算机科学(CS)不是研究计算机这种言论感到惊讶。相反的,学习CS是对自动解决问题的研究。...解决问题的是计算机科学,而不是编程。这就是为什么许多CS的学生似乎不明白自己为什么要学习算法和数学。 如果之前你有去上过CS的课程,你就不会对我这里说的话感到惊讶。...我自己就是一个受害者。 我花了十几年的时间学习各种编程语言。我学的越多,发现建立简单的东西就越难。我总有那么种感觉是我没找到合适的工具。...但是,问题出在当我还没有意识到我要做的工作时,忘了寻找适合的工作而不是寻找适合的工具。 而且奇怪的一点是:编程语言总是在不断发展的。编程语言几乎每天都有所变化,我们很难跟上其步伐。...老木工对上面提到的注意点更感兴趣,而不是锤子和钉子。在对工作科学研究的期间,他还会花时间去检查钉子、着色板和木材等的质量。

46130

敏捷开发需要的是 对 的 人, 而不是 对 的 角色

这是张典型的敏捷开发中 Product Owner的示意图。...这张图往往使人陷入一场争论: 是领域专家,还是架构师, 来担任 Product Owner其实, 争论这个问题,基本上是只考虑了 “敏捷开发中 Product Owner的定义”,而完全忽略了 “产品...“将企业内现行的组织角色,直接就一对一的对应到敏捷开发中的 Product Owner, ScrumMaster,这是忽略产品,忽略团队成员现况的,一种极为错误、极为愚蠢的组织管理模式。...这样的模式,将使团队会因 “对” 的角色,“错”的人,而陷入混乱,甚至崩溃的地步。 “团队的主要,唯一的任务是开发产品。不是来照着规范、教条来做敏捷;敏捷开发只是工具。...而做产品的是 “人”不是 “角色”。唯有找到 “对”的人,才能做出 “对”的产品; 这和角色有绝对必然的关系吗?”

87170
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    开发者需要的是系统设计工具,而不是绘图工具

    这些问题虽然有效,但关注的是Y——提出的解决方案——而不是X——团队想要解决的实际痛点。...我们需要毫不费力地达成系统设计共识,并拥有决策记录的单一来源。 我们需要了解系统行为,并在发生故障更改之前将其捕获。 不幸的是,许多团队没有意识到他们正在关注Y而不是X。...软件开发本质上是协作性的,需要对系统构建、约束和未来演进的共同理解。这种一致性对于消除歧义和实现团队的协同进展至关重要。...“当今的软件技术栈更像热带雨林——动物和植物共存、竞争、生存、死亡、生长、以非计划的方式相互作用——而不是像一个规划好的花园。”...这些工具曾经是说明想法和设计的必备工具,但它们仍然需要改进才能捕捉到系统的全部复杂性,阻碍开发人员全面理解、设计、开发和管理系统。

    6410

    我以为,前端的精髓是学会分析与思考,而不是js语句

    今天我在跟同学们讲课,讲到做轮播图的时候,脑子里突然蹦出一句话,“学js学前端,是学习用程序、用机器的思维方式来解决现实当中的问题,而不是学这几十上百条的js语句”。...现在放空脑子想想,前端开发是做什么?它并不是一个做网页的,虽然这个职位看起来和做起来,都是一个做网页的。...它在网上的形式和载体,我一眼看上去就是网页。但这些网页是什么?有没有想过,为啥要做成这要,不做成那样?因为它们都受限于各自的业务逻辑、交易流程。...我在讲课的过程中,哪怕是做一个鼠标移入移出、获得和失去焦点这么简单的一个东西,也要用思维导图来画一下它的分析过程。就是想让同学们能慢慢的培养一种分析需求、理解需求的逻辑思维的能力。 ?...,它在我眼里是一台发动机的“剖面图”; // 而当我面对一个网站的时候,它在我眼里就是一整台运行中的发动机。

    1.1K70

    为什么 Docker 和 Kubernetes 是用 Go 写的而不是 C# ?

    HahahahahaSoFunny 为什么 Docker 和 Kubernetes 工具是用 Go 写的而不是 C#? 总所周知,现在开发人员使用的很多新工具大多是用 Go 写的。...为什么不是 C# 呢? .NET 和 C# 现在功能已经很强大了,是不是社区缺少这种文化?如何才能培养一种更加开源的文化, 因为很多开发人员对 .NET 和 C# 仍然还抱有偏见。...我认为用 C# 编写更多有趣和有用的开源工具,可以大大的改变人们的看法。...TheAmericanBanana: 我觉得可能是在 Docker 和 Kubernetes 最开始开发时 .NET Core 还不存在( .NET Framework 确定是有的),另外,Kubernetes...它从 2.0 到现在的 10.0 变化非常快,相同的代码逻辑可以用太多不同的方式编写。 而 GO 是一门简单的语言,很受欢迎,因为好的代码应该易于阅读和理解,以便成千上万的开源程序员做出贡献。

    1.1K00

    别一遇冷就唱衰,VR需要的是耐心的灌溉者而不是揠苗助长的跟风人

    不仅如此,深圳华强北UGP销售也透露:“今年VR头盔的月销量在1.7万台左右,而去年普遍在8、9万台,销量下滑比较明显。”...近日,外媒爆出,面对“发展低于预期”的VR市场,诺基亚不得不调整自己的策略,停止开发VR相机OZO和硬件,转而把重心放在品牌和技术授权,以及“优化”未来的VR投资。...EA认为,从长远来看,VR至少还需要五年时间才能发展成一个有规模的市场。...很多人喜欢将VR、AR与O2O、共享经济进行类比,其实这是不对的。后者是一种商业模式,而VR、AR更多的是技术的沉淀。硬件、软件、平台,都需要厂商们从零到有的去搭建,这是一个漫长而艰辛的过程。...没有强交互的AR,更像是一种自娱自乐的消遣方式。 当然,我们在这里并不是吐槽AR不好,只是看不惯那些跟风者的妄下断论罢了。每个新兴的产业都会遇到正常的蛰伏、沉淀,进行螺旋式的上升。

    59960

    关注数据而不是模型:我是如何赢得吴恩达首届 Data-centric AI 竞赛的

    这次竞赛共有489个参赛个人和团队提交了2458个独特的数据集。仅仅通过改进数据(而不是模型架构,这是硬标准),许多参赛者能够将64.4%的基准性能提高20%以上。...在此,我很高兴能和大家分享我是如何凭借“数据增强(Data Boosting)”技术获得最佳创新奖的。...这场竞赛真正的独特之处在于,与传统的 AI 竞赛不同,它严格关注如何改进数据而不是模型,从我个人的经验来看,这通常是改进人工智能系统的最佳方式。...我们需要的是新工具和创新技术来系统地改进数据,Andrew显著地将其称为烹饪(训练模型)的高质量食材。 这篇博文的其余部分将由三个主要部分组成: 1. 大赛概述 2....我最初使用这个电子表格来识别标记错误的图像和明显不是罗马数字 1-10 的图像(例如,在原始训练集中就有一个心脏图像)。 现在我们来看看“数据增强”技术。

    68340

    【CSS】课程网站网页底部开发 ( 网页底部盒子模型测量及样式 | 代码示例 )

    绘制矩形框中的部分 : 一、网页底部盒子模型测量及样式 ---- 1、盒子布局说明 底部盒子主要由如下部分组成 : 红色盒子 : 最外层盒子 水平方向 充满整个 浏览器 , 背景是白色 ; 蓝色盒子...: 内部版心位置的盒子 , 盛放主要内容 ; 绿色盒子 : 版心内部 左侧的盒子 存放 logo 按钮 以及版权内容 ; 橙色盒子 : 版心内部 右侧盒子 , 存放几排链接 ; 2、底部的大盒子测量及样式...底部的大盒子 高度 415 像素 , 实际内容距离顶部有 30 像素的间隔 , 这里使用 30 像素的 内边距撑开该间隔 , ( 外边距会造成塌陷 ) , 由于内边距会撑大盒子 , 这里使用 385..., 只需要将之前定义的版心样式设置给改盒子即可 ; /* 版心宽度 1200 像素 , 在浏览器中居中对齐 */ .w { width: 1200px; margin: auto; }...-- 顶部的标题 --> 我的课程表 <!

    4.2K30

    【Android从零单排系列三十四】《Android布局介绍——ConstraintLayout》

    辅助属性: app:layout_constraintGuide_percent:在容器内创建一个辅助线,并指定其相对位置的百分比。用于对齐其他视图,而不需要真实存在的视图。...TextView 1被设置为位于父容器的顶部,并与父容器的左右边缘对齐。同时,它的底部边缘与TextView 2的顶部边缘对齐。...TextView 2位于TextView 1的底部,并与父容器的左右边缘对齐。同时,它的底部边缘与Button的顶部边缘对齐。 Button位于TextView 2的底部,并与父容器的左右边缘对齐。...同时,它的底部边缘与父容器的底部边缘对齐。 通过这样的约束条件,我们可以实现一种垂直排列的布局,其中TextView 1位于顶部,TextView 2位于其下方,Button位于最底部。...你可以根据需要修改和扩展这个简单的案例,以满足实际的界面需求。 五 总结 ConstraintLayout的工作原理是通过设置视图之间的宽度、高度和相对位置的约束条件来实现。

    44620

    Android ConstraintLayout详解「建议收藏」

    大家好,又见面了,我是全栈君。 1. 概述 在本篇文章中,你会学习到有关ConstraintLayout — 一种构建于弹性Constraints(约束)系统的新型Android Layout。...注意:该部分讲有关手动创建约束的,需要将左上角的自动创建约束按钮关闭 在开始之前,确保ImageView和TextView在layout内。...我们可以在TextView的顶部控键与ImageView的底部控键创建一个约束,如图: 移除约束:移除某个约束只需点击指定约束的控键;移除全部约束需要点击如下按钮: 下一步,创建ImageView...它在UI编辑器的右侧。附带有已选择widget的各种相关属性,而且还显示了该视图是如何对齐与约束的。...相对于约束来放置widget – 当在一个widget有至少两个相对的连接,比如说顶部和底部,或者左侧和右侧,然后就可以使用滑动条来调节widget在链接中的位置。

    2.4K30

    Golang语言情怀--第115期 全栈小游戏开发:第6节:使用场景编辑器搭建场景图像

    ,是快速向场景中添加内容的推荐方法,之后我们还可以根据需要对使用菜单创建的节点进行编辑,创造我们需要的组合。...具体的规则如下: 假设三个 Label 节点都已经选中,从左到右的 6 个对齐按钮会依次将这些节点: 顶部对齐,按照最靠近上方的边界对齐(而不是最上方的节点的上边界) 垂直居中对齐,按照整体的水平中线对齐...底部对齐,按照最靠近下方的边界对齐 左对齐,按照最靠近左边的边界对齐 水平居中对齐,按照整体的垂直中线对齐 右对齐,按照最靠近右边的边界对齐 后半部分从左到右的 6 个分布按钮会依次将这些节点: 顶部分布...注意:不管是一开始测定左右边界和中线还是之后将每个节点对齐/平均分布时的参照,都是节点约束框的中心或某条边界,而不是节点的位置坐标。...例如下图中我们将三个宽度不同的 Label 节点向右对齐后,得到的是三个节点约束框的右边界对齐,而不是三个节点位置的 x 坐标变成一致。

    18520

    UIButton实现各种图文结合的效果以及原理

    图片保持居中,而文字左右居中且顶部距离按钮顶部 这种方式要求图片在按钮中居中,而文字则要求左右居中而垂直方向位置则是距离按钮顶部的间隔值。...而文本则要调整为距离顶部的间隔值,也就是新的文本的顶部值等于padding, 而原来顶部值是titleRect.origin.y,因此只需要偏移titleRect.origin.y - padding就可以了...图片保持居中,而文字水平居中且底部距离按钮底部 这种方式要求图片在按钮居中,而文字则要求左右居中而垂直方向的底部位置则是距离按钮底部的间隔值。...图片在右,文字在左,距离按钮两边边距 在这种方式中,图片和文本都是垂直居中对齐,这部分是不需要调整的,而文本的左边则需要由原来的titleRect.origin.x移动到左边padding的位置,而图片的左边则需要由原来的...图片在左,文字在右,距离按钮两边边距 这种方式中,图片和文字的垂直位置不需要调整,而只需要将图文的水平位置调整即可,而调整的方法和上面的相似,只是图片移到左边儿文字移到右边而已。

    3K10

    【移动端网页布局】流式布局案例 ② ( 实现顶部固定定位提示栏 | 布局元素百分比设置 | 列表样式设置 | 默认样式设置 )

    , 只要不是基线对齐 , 随便设置 顶部 / 底部 / 中部 对齐都可以实现图像居中 ; .app ul li:nth-child(1) img { /* 设置关闭按钮的图像宽度 该图片自动水平...高度没有给出 但是 宽高等比例缩放 高度也是 30 像素 */ width: 30px; /* 默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部...*/ width: 30px; /* 默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align...默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align: middle; } a { /*...*/ width: 30px; /* 默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align

    2K10

    【CSS】课程网站 网格商品展示 模块制作 ① ( 网格商品展示模块盒子模型测量及样式 | 顶部文本标题盒子测量及样式 | 代码示例 )

    文章目录 一、网格商品展示模块盒子模型测量及样式 1、盒子尺寸测量 2、标题盒子尺寸测量和样式 3、左侧文本盒子尺寸测量和样式 4、右侧文本盒子尺寸测量和样式 二、顶部文本标题盒子代码示例 1、HTML...15 像素 */ .box { margin-top: 15px; } 3、左侧文本盒子尺寸测量和样式 标题盒子判定 , 上面的标题 , 可以将其设置为 垂直居中 的样式 , 垂直居中 , 需要行高...-- 顶部的标题 --> 我的课程表 底部的 全部课程 按钮 --> 全部课程 <!...= 内容高度 */ line-height: 38px; } /* Banner 条右侧 课程表 底部按钮 - 鼠标经过时的样式 */ .all:hover { background-color

    4.3K40

    【移动端网页布局】流式布局案例 ④ ( Banner 栏制作 | 固定定位 | 标准流 | 百分比宽度设置 )

    , 搜索栏还需要保持 不管如何进行滚动 , 始终悬浮在最上方 ; 搜索栏 必须是同 固定定位 , 才能实现上述效果 ; 搜索栏 父容器 样式如下 : /* 下面是搜索栏样式 */ .search-wrap...默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align: middle; } a { /*...*/ margin: 0 auto; /* 字体大小 14 像素 */ font-size: 14px; /* 如果是苹果就是用苹果默认字体 如果不是苹果手机...*/ width: 30px; /* 默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align...margin: 14px 0 0 15px; } .search-login { /* 右侧按钮布局 */ /* 右侧按钮需要设置到左侧 使用绝对定位进行设置 */ position

    1.7K20

    【移动端网页布局】流式布局案例 ⑥ ( 多排按钮导航栏 | 设置浮动及宽度 | 设置图片样式 | 设置文本 )

    100% , 高度也不需要设置 , 设置自适应即可 ; 具体控制每行显示多少个元素 , 需要进行精确的计算 , 每行有 5 个元素 , 每个元素占宽度的 20% , 这个计算必须精准到 1 像素 , 如果不精确...默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align: middle; } a { /*...*/ margin: 0 auto; /* 字体大小 14 像素 */ font-size: 14px; /* 如果是苹果就是用苹果默认字体 如果不是苹果手机...*/ width: 30px; /* 默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align.../* 设置图片链接中的图片 在水平方向上充满父容器即可 */ width: 100%; } /* 多排按钮导航栏 */ nav { /* 整个导航布局距离顶部 5 像素 */

    3.3K40

    【移动端网页布局】流式布局案例 ③ ( 实现搜索栏功能 | 伪元素选择器 | 子绝父相 | 外边距塌陷处理 | 二倍精灵图处理方案 )

    ; /* 设置盒子的尺寸 */ width: 40px; height: 44px; } 4、搜索栏左右两侧的按钮盒子 左侧的按钮所在的盒子 40 x 44 像素大小 , 该按钮盒子通过定位设置..., 左侧的半圆需要设置 左上角和左下角 圆角半径为 15 像素 , 右侧半圆需要设置 右上角和右下角 圆角半径为 15 像素 ; 总的高度是 44 像素 , 搜索栏的盒子高度 30 像素 , 设置该高度后..., 需要设置 7 像素的 上边距 , 使得该搜索栏可以垂直居中 ; 如果为中间搜索栏盒子设置一个 7 像素的外边距 , 会导致外边距塌陷 , 将左右两侧的按钮都带下来 ; 外边距塌陷解决方案是 为 父容器...默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align: middle; } a { /*...*/ width: 30px; /* 默认的图片对齐方式是基线对齐 只要不是基线对齐 这里随便设置 顶部 / 底部 / 中部 对齐都可以 */ vertical-align

    2K30
    领券