我从哪里开始 - 关于编程?

时间:2008-12-07 00:49:52

标签: php asp.net python linux

我似乎处在Linux的永无止境的尾部旋转,不管是不是Windows。 Web编程或系统编程。 Python或PHP。

我自学编程。但似乎我一直在被撕裂,想要走哪条路。不幸的是,总是看起来很好的理由得到跟踪。你知道整个开源或专有的东西。最近我决定在一年之后Linux不会为我削减它,它主要源于我想要在第9频道等观看视频,以及Linux的笨拙。所以这引导我,“我应该学习ASP.NET,因为我更加决定Windows是一个”必要的“邪恶。

我希望这是有道理的。我之所以选择Web开发作为学习编程的课程是因为我实际上有一个任务是实现而不是漫无目的地阅读参考书等。

有没有人对他们为保持专注而做的事情提出任何建议,而不是在每一个切线或想法中领先。

9 个答案:

答案 0 :(得分:7)

你将只有一段时间的第一语言。选择您感兴趣的任何方向,并按照它。没有办法介绍“从Firehose喝酒”的经历。

保持早期项目简单,有形。建立有用的东西,动力就在那里。

网络/桌面/移动/等等,一切都很好。找到一个能让你在编码时考虑代码的方法,并且你会知道你正朝着正确的方向前进。

答案 1 :(得分:2)

  
    

我选择Web开发作为学习编程课程的原因是因为我实际上有一个任务是实现而不是漫无目的地阅读参考书等。

  

这正是要遵循的课程。我想我们大多数人都以同样的方式进入编程。找出问题并以适当的技术解决其解决方案。继续寻找你感兴趣的问题,你会找到你自己的答案(这可能与我自己的答案不同)。

答案 2 :(得分:2)

实用程序员的建议之一是每年学习一门新语言。可能每次都是完全不同的(关于这个问题,请参见Martin Fowler's opinion)。

回到你的具体细节,你选择了编程的方式,因为你喜欢它(我希望:-));如果您对当前环境不满意,请进行更改。

答案 3 :(得分:0)

不要太担心你的方向,只要确保:

a)你很享受它,并且正在理解你在做什么。例如,您不必初始理解像多态这样的概念,但您应该了解您正在做的事情的基础知识。一段时间后,你不能用Python在Tuples和Dictionaries中包装它们吗?那可能不适合你。当然,这是一个非常低级的例子,好像你没有得到字典,那么一般都有问题: - )

b)你正在研究你想要解决的问题,而不仅仅是因为你认为你需要学习这些。你使用短语“Windows是必要的邪恶”不,它不是。许多公司(大型和小型)都不使用.NET平台进行开发。你的Linux方法很有意思,因为你无法实现你想要的东西而你的结果是“它很笨重”,这看起来有点尴尬。

无论哪种方式,这不是关于Linux与Windows,但我希望这有帮助。只要顺其自然,只要你喜欢和学习,就不要担心你的方向! :)

答案 4 :(得分:0)

我发现我的一些初级同事(至少是那些非常热衷于CS的同事)提出了类似的问题(有时候我发现自己也在问这个问题,即使我现在已经12年多了这个行业)。我给他们(以及对我自己)给我的一个建议是 -

  • 专注于已经分配给您的工作。作为该任务的一部分,请确保您不仅仅“完成工作”,还要确保您了解相同的基础知识。如果你想成为一名优秀的程序员,你需要了解“事情如何运作”的基本原则。使用API​​进行矩阵乘法很容易,但是如果你真的不知道什么是矩阵乘法以及如何手工完成,那么你实际上就输掉了。因此,在您选择的Web编程领域中,请确保超越表面。当您点击该按钮时,了解您背后的真实情况。

  • 作为“做好工作”的一部分,您通常可以弄清楚您的兴趣领域是什么。如果你对事情的实施方式更加热衷,并且不断搞清楚,那么你就是IMO,一个系统人。如果您更热衷于找到所有新工具和更新的功能,并且似乎热衷于将各种功能组合在一起以创建更新更酷的输出,那么您就是应用程序员。两者都是以自己的方式有趣的领域,正如上面提到的人们所做的那样,实现你喜欢的东西,看看你是否能坚持下去。

  • 我喜欢上面的建议之一。如果您仍然感到困惑,请尝试执行此“轮换”操作。几乎每个领域/领域都有很多范围,因此保持旋转(但是给每个轮换到期时间),直到找到你喜欢的为止。

一切顺利。

: - )

答案 5 :(得分:0)

感谢您的深思熟虑的回复

无论如何,这似乎是让我学习编程的又一分心。我花了更多的时间为升级的包等追逐明显的修复。大多数事情已经在工作,而且花时间重新创建车轮似乎没什么意义。相信我,对于追逐Linux作为可用桌面的真正替代品的梦想是否合理是有意义的。现在请记住,前Windows用户总是必须将他们使用Linux的经验与他们以前在尝试使用Windows之前的工作方式进行比较。

只是我的两分钱

答案 6 :(得分:0)

这是一项竞争业务。技术流失让每个人都忙碌,想要擅长自己手艺的工人可以在新技术的海洋中不断忙碌。但是,最终所有这些技术都在一定程度上遵循相同的模式和实践。成为基础知识方面的专家将大大有助于在这项业务中发展事业。 Pragamatic Programmer是方向的经典来源。

此外,您可以或应该做什么(Windows与Linux)可能在很大程度上取决于地理位置。我跟随我所在地区的就业市场。花一点时间找出正在寻找什么业务以及承包商正在做什么,并根据这些信息选择要学习的技术。用户组,会议和代码阵营也是一个很好的来源。

如果真正的问题在于您自己构建第一个网络应用程序并找到您在第9频道上看到的内容更具吸引力,那么也许您应该按照自己的直觉行事!顺便说一句,我想你会发现到处都是“笨拙”,不妨习惯它。

答案 7 :(得分:0)

你真正需要做的就是确保你采取婴儿步骤,并正在做一些你正在享受的事情。

我开始在一个小游戏中使用visual basic编程。不是最好的语言,但对我来说这是一个很好的起点。我的观点是,您不需要从一开始就选择最好的语言/操作系统/任何东西,只需迭代即可。这是编程方式。

顺便说一下,仅仅因为你使用Windows作为你的操作系统并不意味着你必须做所有的事情.NET我使用Windows然后为我所有的网络托管服务器提供服务器。

答案 8 :(得分:0)

我自己也有同样的问题。我厌倦了只是在PHP中,并希望能够做更多。我最终决定使用C#,因为它不仅满足了“必要的邪恶”论点,而且允许我在MS领域做任何我想做的事情,并且是与另一种语言(Java)最接近的语法。

考虑到所有不同类型的项目,这让我开始选择这个方向。这两种语言都可用于Web开发,移动设备和桌面应用程序。