验证曲线和学习曲线
Doing what I do for a living, which these days mostly involves creating technology books and courseware, I’m constantly learning new technologies. In a way, my new tech adventures are not much different than the ones most IT pros face, except that mine probably hit more often.
做我自己的工作,这些日子主要涉及创建技术书籍和课件 ,我一直在学习新技术。 从某种意义上说,我的新技术历险与大多数IT专业人员所面临的冒险并没有太大不同,只是我的新技术冒险命中率更高。
Because there’s so much depending on my understanding the new platform or process — and so many other newer platforms and processes waiting for my attention once I’m done with this one — my primary goal is to get in and out as fast as possible.
因为在很大程度上取决于我对新平台或流程的理解-以及许多其他较新的平台和流程在我完成这一工作后等待我的注意-我的主要目标是尽可能快地进出。
Trying to organize the layers of complexity and design metaphors inherent in a technology while struggling to figure out if it’ll even do exactly what I want can sometimes be downright intimidating. Without a good plan of attack, I’m dead in the water.
试图组织技术固有的复杂性和设计隐喻的层级,同时努力弄清楚它是否能够完全满足我的要求,有时可能会令人生畏。 没有好的进攻计划,我就死定了。
Before I share a couple of the tools that I’ve used successfully in my own learning, it’s worth discussing a real-world (relatively) new technology.
在分享自己在学习中成功使用的两个工具之前,有必要讨论一下现实世界(相对)的新技术。
A while back, the operations management monitoring company ScienceLogic conducted a survey of more than a thousand enterprise and IT professionals, seeking their thoughts on cloud adoption. While it’s clear that more and more of the IT workload is shifting to cloud providers (with Amazon Web Services leading the way by every metric), there’s deep and widespread concern over what the impact of the change might be.
不久前,运营管理监控公司ScienceLogic 对一千多名企业和IT专业人员进行了调查 ,以征询他们对云采用的想法。 显然,越来越多的IT工作负载正在转移到云提供商(Amazon Web Services在每个指标方面都处于领先地位),但人们对这种变化的影响深表忧虑。
31% of respondents felt they lacked the skills to confidently lead a cloud deployment, 50% claimed they lacked the tools to properly manage infrastructure in the cloud, and 28% worried that the shift to the cloud could endanger their current jobs.
31%的受访者认为他们缺乏自信地领导云部署的技能,50%的受访者表示他们缺乏适当管理云中基础架构的工具,还有28%的受访者担心向云的转变可能会危及当前的工作。
Sound familiar? The faster and more disruptive the change, the more we all worry about how — or if — we’ll keep up. And if you think Joe IT Professional stays up nights wondering how he’ll figure it all out, show some sympathy for his manager who’s responsible for dragging an entire department into the cloud.
听起来有点熟? 变更越快,破坏性越大,我们所有人就越会担心如何(或是否)能够跟上进展。 而且,如果您认为Joe IT Professional彻夜难眠,想知道他将如何解决所有问题,请对负责将整个部门拖到云中的经理表示同情。
AWS in particular is on my mind right now because my Wiley/Sybex book “AWS Certified Cloud Practitioner Study Guide” just came out. AWS was a technology I first struggled to understand more than a decade ago when I needed to build my own public-facing web conferencing system (using BigBlueButton). It was a long journey between that first EC2 server and the comfort level and deep experience I reached before attempting the book, but the things I got right — and wrong — while taking those first steps went a long way to shape how I now teach IT topics.
由于我的Wiley / Sybex书“ AWS认证的云实践者学习指南 ”刚刚出版,因此我现在特别想到AWS 。 AWS是十多年前我第一次努力了解的技术,当时我需要构建自己的面向公众的Web会议系统(使用BigBlueButton)。 从第一台EC2服务器到尝试本书之前达到的舒适度和深厚的经验之间的漫长旅程,但是,我采取的第一步的正确与错误之道对我现在教授IT的方式有很大帮助。主题。
顺序与扫描和运行 (Sequential vs scan-and-run)
How you’ll learn a skill partly depends on what you’re planning to learn. If you’re looking for an introduction that will take you from zero to functional on a full-stack, multi-tier environment like AWS, then you might be safer going sequential. Starting at the beginning can help you avoid missing critical details — like the way billing or security work on AWS. Trust me: if you don’t like the idea of surprise four-digit monthly service charges or compromised infrastructure, then you don’t want to skip the billing and security basics.
您如何学习某种技能部分取决于您计划学习的内容。 如果您正在寻找可以使您从零开始在全栈,多层环境(例如AWS)上正常运行的介绍,那么顺序执行可能会更安全。 从一开始就可以帮助您避免丢失关键细节,例如AWS上的计费或安全性工作方式。 相信我:如果您不喜欢每月四位数的服务费或基础设施受损的想法,那么您就不想跳过计费和安全性基础知识。
But if it’s a standalone software package (like a virtualization technology or a new IDE) that you can safely test a few times in your own network before actually deploying for real, then fasterer is gooderer. For this kind of project I will often fire up a clean Linux container using LXC (which, for exploring new software, I find far preferable to Docker) or, when the application I’m working with requires host kernel access (like SELinux), a Linux virtual machine on Virtual Box.
但是,如果它是一个独立的软件包(例如虚拟化技术或新的IDE),则可以在实际部署之前在自己的网络中安全地测试几次,然后越快越好。 对于此类项目,我通常会使用LXC来启动一个干净的Linux容器(为了探索新软件,我发现它比Docker更可取),或者当我使用的应用程序需要主机内核访问权限时(例如SELinux), Virtual Box上的Linux虚拟机 。
By “scan-and-run” I mean carefully crafting a search string in DuckDuckGo.com (or one of those other search engines whose names escape me at the moment), quickly picking out the information you want from the results, and trying it on your disposable virtual server. Didn’t work? Congrats. You’ve just learned something you didn’t yet know.
“扫描并运行”的意思是在DuckDuckGo.com(或其他目前名称不为人知的搜索引擎之一)中精心设计搜索字符串,快速从结果中挑选出所需信息,然后进行尝试在您的一次性虚拟服务器上。 没工作吗 恭喜。 您刚刚学到了一些您还不知道的东西。
Just make sure to properly document both your failures and successes so you don’t have to walk around the same park over and over again.
只需确保正确记录您的失败和成功,即可避免一遍又一遍地走在同一个公园里。
命令行 (The command line)
Given a choice, I generally prefer working from the Bash command line over GUI consoles. It’s not because I’m a command line snob (although I am), but I find the unambiguous and trackable nature of a CLI works well with iterative experiments. In plain language, that means it’s easier to retrace my steps to figure out exactly what worked and what didn’t. And don’t forget that Bash error messages can easily be recycled into terrific internet searches.
如果有选择,我通常更喜欢从Bash命令行而不是GUI控制台进行工作。 这不是因为我是命令行势利小人(尽管我是),但我发现CLI的明确性和可追踪性在迭代实验中很好地起作用。 用通俗易懂的语言,这意味着更容易地追溯我的步骤,以准确地找出哪些有效,哪些无效。 并且不要忘记,Bash错误消息可以轻松地回收到出色的Internet搜索中。
Another CLI advantage: the predictable patterns of a well-designed shell environment can make it even easier to anticipate functionality than a well-designed web GUI. Let me illustrate that using the AWS CLI. Once it’s installed and properly configured, even running `aws` without any arguments will get you something useful. Notice how the output guides you to add `help` to any partially completed command to return contextual assistance.
CLI的另一个优点是:精心设计的shell环境的可预测模式可以使设计功能比精心设计的Web GUI更加容易。 让我使用AWS CLI进行说明。 一旦安装并正确配置它,即使运行不带任何参数的“ aws”也会为您带来一些帮助。 注意输出如何引导您将“ help”添加到任何部分完成的命令中以返回上下文帮助。
$ aws
$ aws
$ awsusage: aws [options] <command> <subcommand> [<subcommand> …] [parameters]
$ aws 用法:aws [选项] <命令> <子命令> [<子命令>…] [参数]
$ awsusage: aws [options] <command> <subcommand> [<subcommand> …] [parameters]To see help text, you can run:
$ aws 用法:aws [选项] <命令> <子命令> [<子命令>…] [参数] 要查看帮助文本,可以运行:
aws help
AWS帮助
aws help aws <command> help
aws help aws <命令>帮助
aws help aws <command> help aws <command> <subcommand> help
aws帮助 aws <命令>帮助 aws <命令> <子命令>帮助
aws help aws <command> help aws <command> <subcommand> helpaws: error: too few arguments
aws帮助 aws <命令>帮助 aws <命令> <子命令>帮助 aws:错误:参数太少
It’s true that there’s plenty of help available through the GUI: all AWS console pages have links to extensive documentation resources. But that would be AWS documentation which, while well written and carefully maintained, is usually very, very wordy and sometimes a bit confusing. The inline CLI docs are much more focused and get you in and out more quickly.
的确,通过GUI提供了很多帮助:所有AWS控制台页面都有指向大量文档资源的链接。 但这将是AWS文档,尽管编写得当且经过精心维护,但它们通常非常冗长,有时会造成混淆。 内联CLI文档更加集中,可让您更快地进入和退出。
Just being familiar with how to access this kind of information can make you much faster and more effective…even through the early learning stages. And the basic structure is available far beyond just AWS.
只要熟悉如何访问此类信息,就可以使您更快,更有效……甚至在早期学习阶段也是如此。 而且基本结构远不止AWS。
On the other hand, as I wrote in my "Learn AWS in a Month of Lunches" book, I feel that the AWS browser console is actually a better place to first come to grips with the workings of Amazon’s cloud. That’s because high-level structure plays such a large role in understanding the way the dozens and dozens of AWS services work together, and the website does such a good job visualizing it. But maybe that’s just me.
另一方面,正如我在“在一个月的午餐中学习AWS”一书中所写的那样,我认为AWS浏览器控制台实际上是一个更好地掌握Amazon云工作原理的好地方。 这是因为高层结构在理解数十个AWS服务一起工作的方式中起着很大的作用,并且网站在可视化方面做得很好。 但是也许就是我。
自己做 (Do it yourself)
More than anything else, your learning will be the most effective if you roll up your sleeves and try it out. Not only should you duplicate the documentation examples, but change the parameters around to see what breaks. And then plan and execute your own projects based on the technologies you’re learning. Applying your knowledge to the real world is critical.
最重要的是,如果您袖手旁观并尝试一下,那么学习将是最有效的。 您不仅应该复制文档示例,而且还可以更改参数以查看有什么问题。 然后根据要学习的技术计划并执行自己的项目。 将您的知识应用于现实世界至关重要。
翻译自: https://www.freecodecamp.org/news/beating-the-technology-learning-curve-monster/
验证曲线和学习曲线