English Русский Español Deutsch 日本語 Português 한국어 Français Italiano Türkçe
更好的程序员(第 03 部分):放弃做这 5 件事成为一名成功的 MQL5 程序员

更好的程序员(第 03 部分):放弃做这 5 件事成为一名成功的 MQL5 程序员

MetaTrader 5示例 | 15 十月 2021, 13:11
2 187 0
Omega J Msigwa
Omega J Msigwa

内容目录

  1. 放弃为过去而战。
  2. 放弃不自信。
  3. 放弃每个人都应该像您一样思考的信念。
  4. 放弃作为一名接受者,并开始给予。
  5. 放弃自恋。

概述

在编码世界中,菜鸟是最容易误解的编码员。 不可预测是菜鸟最大的行为之一。 您永远不知道他们在代码中做出来了什么,即使他们告诉你他们想要实现什么。 在所有的原因中,最大的因素是他们的行动不一致。

在本系列的第三篇文章中,我们将看到 放弃 5 个习惯,从而开启成功的 MQL5 编码生涯。

菜鸟 vs 专业版

01: 放弃为过去而战

"改变的秘诀是集中您的所有精力,不要纠缠于旧有代码,而是建立新的。"
— Socrates(苏格拉底)

在您早期的 MQL5 编程甚至更晚一点的时候,您可能已经创建了一个智能交易系统 (EA)、一个函数库、一个指标或一段代码,您的大多数客户都对这些代码给予了负面评价。

或者,您可能创建过一、两个 EA,其中有很多错误会引发不必要的交易执行,从而导致您不仅亏光本钱,而且还在代码库、自由职业者或其它方面,破坏了您在潜在客户心目中的声誉。 诚恳地讲,这很糟糕,但更糟糕的是回想那些时刻,且您还总在意这些。

与其浪费时间回忆那些让您觉得自己是一个悲惨的程序员的痛苦时刻,不如用同样的时间专注于在你发现自己的领域提高自己 在?

  • 如果您犯了很多错误,那么如若需要,请专注于学习如何调试特定区域,或一般调试原则。
  • 阅读有关该领域的文档,并进行大量练习。
  • 如果您仍然不确信,则可在论坛上咨询他人您可能遇到的问题。

翻翻您的论坛旧主题,在这些主题中您可能问过一些您现在看来称之为愚蠢的问题,如此来批评自己纯属浪费时间资源(电力、数据和 计算机存储)。

像这样的想法:

  1. "我应该这样来写代码"
  2. "我应该在我的 EA 中使用该指标"
  3. "如果我只要……我的指标可能会更好"

还有些类似的,会降低您自尊的事情,譬如您总把无法改变的过去视为遗憾。 如果您想要施行某些改变,那么从现在就开始为您未来的系统努力。


02: 放弃不自信

如果您想编写某个系统,不需要等待来自您认可的专家/专业人士的许可或验证。

我经常看到菜鸟在论坛上发布他们的代码,然后得到的反馈远超出他们期望的结果。 但他们发问的原因源于他们不相信自己 — 他们希望得到专家的验证,他们不确定自己的发现是否可以解决他们一直在努力应对的问题。

在编码中,我相信,代码本身会告诉您是对还是错。 如果它没有漏洞,您就完全理解它,并且您能确切地知道自己想要什么。

如果它的操作方式如您所愿,那么它就已非常接近正确。 了解可怕错误的最好方式是开始寻求每位程序员的验证(这里包括菜鸟),因为每个人都有自己独特的编程风格,但这些方式都是为了实现与您相同的共同目标。 

这是人类表达不同意见的方式,这并没有错。 因此,没有特定的一种方式能实现所有东西,尽管有些方式比其它方式更好。 这就是为什么您必须知道自己正在实施什么,以及您想要达成何种结果。 完成它,然后调试,并测试其有效性

相信自己并不意味着不能在论坛上分享您的观点,而是一切都靠自己— 不! 不要误会我的意思。 您只需要知道针对新思想保持开放态度与只是想得到专业程序员验证之间的区别。


03:  放弃每个人都应该像您一样编码的信念

期望每个人都按照自己的风格编码是病态的。 让您周围的人如同您一样思考和编码也是病态的。 如果您还是个菜鸟,而且您周围的人亦都是菜鸟,我不知道该告诉您该如何做,唯苦笑尔!

正如前一点所解释的,我们是人类,对于解决某个问题,我们有不同的意识、理解方式和观点。 故此,当有人与您有不同的观点和代码时,不要气馁,重要的是你们拥有想要实现的共同目标。

如果您在论坛上看到某人的代码,请不要急于炫耀您的编码方式,而是为他/她正在努力解决的问题提供解决方案,因为没人知晓他/她的编码方式是否比您的更好? 把所有程序员变成通用 (非自适应) 机器人,在世界各地 24/7 都坚持相同的模式,这绝不是您的工作。

与众不同是让创造力成为可能,并令我们的编码生涯充满刺激的原因。 

“想想改变自己是多么困难,您就会意识到尝试改变他人的机会是多么渺茫。”
—Jacob M. Braude(雅各布·M·布劳德)。

不要把某人的编码方式和论坛上回答的解决方案相混淆。 方式可能包括他们喜欢的函数库,或他们选择的指标,但解决方案主要是让事情能按他们提供的方式得以解决。


04: 放弃作为一名接受者

"给予者推进世界,索取者推进自己并拖累世界。"
—Simon Sanek(西蒙·西内克)

是时候停止只消费代码库上的代码和市场上的免费产品,并开始制作一些东西来帮助他人,就像您开始编码时得到他人的帮助一样。 

与全世界分享您学到的知识,和您已经知道的东西,即使您依然还在学习,不过您清楚什么是有趣的(专业程序员总是很好学,而菜鸟则相信他们已经都懂了)。

若您把自己置于等式当中,则可加速您的学习进度。这不适于在市场上发布代码和产品;我相信这在论坛上非常重要,因为在那里每个人都是程序员,若您知道答案则反馈问题,并留意那些您尚未注意到的问题。 我无法告诉您我每天看到多少专业程序员在论坛上积极参与帮助新手(对此我很感激)。


05: 放弃自恋

"天赋也许会赢得某局比赛,但团队合作和智慧则会赢得最终的冠军。"

—Michael Jordan(迈克尔·乔丹)

菜鸟并不熟悉开源这个词,亦不知道如何利用它;当有人在论坛上查看他们的扩展代码,并指出可能的错误,希望得到他们更好地解答时,他们会感到莫大恐惧。 这就是为什么我之前在文章简介中说他们是被误解的编码员。 我可将此与菜鸟联系起来,他们认为自己的编码非常特别(虽然里面有漏洞,甚至他们都没发现和修复),但他们觉得有人可能会窃取这些特殊代码,并利用它制作一个圣杯系统;但却不知道若关于某个问题提供的描述很少,且您尝试过的代码和方式也较少,则会令他人很难对主题做出回应 …… 故此他们在论坛上不再响应,且不再关注没人理解的东西。

所有这些糟糕的事情都是由自恋的菜鸟造成的。

作为一名 Web 开发人员,我无法告诉您我曾见识过多少个伟大的项目,其中一些项目价值数百万甚至数十亿美元,但它们都在 Github 上开源

我相信,如果不允许其他开发人员添加他们的贡献,就没有更好的方法来加速项目的增长和普及 

"两个头脑总比一个强。"
— 非洲谚语

结束语

实话实说,我在 MQL5 编程或我的 Web 开发生涯中并不那么出色,也不完美。 我仍然是编程方面的学生,学习是无止境的,因为它永远不会停止教训人。 我每天都在努力提升,并变得更好。 我鼓起勇气与您分享这一点(一边当学生一边教书),是为了帮助和我有同样热情的人成为更好的程序员

让我们一起踏上这段旅程吧!
此致敬礼

本文由MetaQuotes Ltd译自英文
原文地址: https://www.mql5.com/en/articles/9746

更好的程序员(第 04 部分):如何成为更迅捷的开发人员 更好的程序员(第 04 部分):如何成为更迅捷的开发人员
每位开发人员都希望能够更快地编写代码,且能够更快、更有效地编写代码并非只是少数人与生俱来的特殊能力。 无论有多少年的敲键盘经验,这项技能每位编码员都可以学习。
针对交易的组合数学和概率论(第三部分):第一个数学模型 针对交易的组合数学和概率论(第三部分):第一个数学模型
早前所研讨主题的逻辑延续,即针对交易任务开发多功能数学模型。 在本文中,我将从头开始讲述与分形数学模型开发相关的整个过程。 这个模型应成为一个重要的构建模块,且其是多功能和通用的。 它将为我们遵循该思路深入开发奠定理论基础。
DoEasy 函数库中的图形(第八十二部分):函数库对象重构和图形对象集合 DoEasy 函数库中的图形(第八十二部分):函数库对象重构和图形对象集合
在本文中,我将通过为每个对象分配唯一类型来改进所有库对象,并继续开发库图形对象集合类。
针对交易的组合数学和概率论(第二部分):通用分形 针对交易的组合数学和概率论(第二部分):通用分形
在本文中,我们将继续研究分形,并会特别留意总结所有材料。 为此,我将尝试把所有早期开发归纳为一个紧凑的形式,这对于交易中的实际应用来说将是方便和易于理解的。