① 我想开发一款软件并且来卖,但我自己不是程序员。
建议去软件外包网 组建开发团队,你可以外包给多个程序员,然后整合在一起,这样你也不用怕别人稍加改动就再卖。
② 码农为赚外快,制作外挂软件牟利,此事具体是何情况
外挂这种东西我们都非常的熟悉,当然我们对于外挂的态度是既爱又恨,爱他是因为它能让我们在游戏中获得巨大的优势,可以轻松享受获胜的快感,恨它是因为如果有别人用外挂软件,那我们作为一个受害者的话,在游戏里无疑会受到非常差的游戏体验,剥夺了我们对于游戏的乐趣。
这是站在不同的角度而言,我们都知道像外挂这种东西一般都是程序员这类人编写而成的。正是因为外挂可以谋利,所以有许许多多的程序员去编写外挂,所以外挂虽然一直被打击,确实无法禁绝。网上就有一起关于程序员编写外挂获取利益,被警方抓获,在网络上引起关注的事件,接下来为大家梳理一下事件的经过。
写在最后以上观点仅代表我个人,这起事件如果大家有什么看法,欢迎留言探讨哦。
③ 什么是程序员
什么是程序员
什么是程序员?什么人能称得上是程序员?会编程序的人都是程序员嘛!这个问题看似简单,但细想一下,也很难回答。其实在中国,有关程序员有很多种接近的叫法,例如“开发人员”,“编程人员”,“电脑人员”等等。只是现在分工越来越细,专业化程度不断提高程序员这个词才会逐渐地流行起来。
那么什么人才算是编程人员呢,现在看来凡是从计算机专业或相近专业毕业的、以编写程序为职业的都可算得上程序员。但是在上世纪80年代到90年代,由于计算机还是个新生事物,整个社会对其有种神秘、高贵、不可触及的印象。加之计算机人才少之又少,除了计算机专业从事开发工作之外,很多非计算机专业的同志,甚至初高中生也加入到开发队伍之中,他们充满激情,敢于学习,勇于探索,他们其中有许多人很快地就成为开发队伍中的主力军,成为编程人员中的佼佼者。有的时候,专业的程序员还不如业余的程序员,这种情况比比皆是。那个时候,开发环境、学习环境比现在差的很多,程序设计语言比较单调,技术书籍更是少之有少。记得当时只能把单位印制8086,Z80汇编程序设计当作教材,用debug把操作系统中代码打印成厚厚书籍来阅读。由于单位是生产电脑(组装)的,因此,使用电脑还是比较方便,但是,绝不可能在家里自己拥有电脑的。
由于那时程序员可以触及电脑,可以看着别人不懂的代码,可以让电脑执行自己的指令,在许多外行甚至内行人看来,是非常敬仰的。
程序员一般只掌握单一的程序设计语言,比如编写汇编程序的程序人员,编写C语言的程序人员,编写unix、xenix、aix、soc、hp-unix等unix类的shell程序人员,编写与数据库打交道的procc程序人员,编写C++程序的程序语言,编写面向对象的VFP、VB、Delphi,PB的程序人员,编写web程序的HTML,CGI,ASP,php的程序人员、编写C#、java的程序人员,这些程序语言有些被保留下来,有的则被时代无情淘汰了。同样程序员如果不能适应语言的发展也避免不了被淘汰的命运。
我感到其实程序员和其他职业人员不同之处:
1)因为比尔盖茨是编程序的,似乎每个程序设计人员都有一个“比尔盖茨”梦想:比尔盖茨能做的,我也许能做到,即使做不到,做一半也是不错的。这个潜在的意识是程序员最大的财富,许多程序人成了有理想有抱负的人。我想很多人选择IT大都与此有关吧。
2)工作成果完全由自己把握,随编随运行随出结果。这种自我感觉是很多职业都不具备的。因此,程序员有很强的自信性。而且这种自信,往往可以使得程序员产生自己可以开公司念头。
3)有很高的预期价值。
软件通过使用创造了价值,程序员通过制作产生了软件。因此,程序员往往把软件的价值看作自己的价值,例如一个软件卖了5万元,程序员就会把自己的劳动价值故在5万上,如果这个软件有100个潜在的市场,那么程序员就会把这个价值升值到5*100=500万上。所以在程序员这个群体,很多人都相信自己未来能够获得更多的'收入。
当然,程序员也有其他一些特点,例如:有的程序员喜欢晚上干活,白天睡觉;有的喜欢钻研,连续加班;有的头脑灵活,动手能力强;有的喜欢追逐最新技术,变成别人公司的代言人等等。
有一点我是注意到了,程序员在社会上的地位呈下降趋势,以往给人以仰目而视的形象,逐步走下神坛。也许我们在中国的程序员中间再也发现不了比尔盖茨的身影了。
这是程序员的悲哀还是社会的悲哀,还是正常不过的社会现象?
;
④ 软件销售行业大概都需要做哪些工作我一个程序员想转行去做软件销售可以么
最起码对开发的软件要能看懂,知道最起码的流程,你这样和客户交流的时候,就比较清晰,以后客户用你软件的时候,你也懂一点。你作为一个程序员去做销售还是有一定的优势的,而且你技术不错的情况下,去做销售,是正确的一个选择,支持你
⑤ 程序员写的软件,要怎么样在能在网上合法销售
没卖过 去淘宝上卖!!
⑥ 如何将自己做的软件拿去卖
可以到《程序员联合开发网》《红黑联盟》等网站去卖、但你的软件要有足够的价值、
⑦ 程序员如何赚外快_程序员怎么赚外快
1、找同行,一般公司都会有功能组件外包给私人做(阿里,华为,网络都有)
2、猪八戒类册樱的威客网站(收入还可以陵姿咐,建议接几个任务后去尺纯接招标的单子)
3、自己开发游戏辅助软件或者某个行业的小软件,目前电商行业的比较好做,不过要求你有足够的了解(辅助软件靠广告赚钱稳定,行业工具就直接卖吧)
⑧ 程序员如何将自己做的东西卖出去
有很多人不知道上哪里去争取项目,总是抱怨没有项目做;也有的人虽然编程技术不错,但是对于与客户谈项目却是一窍不通,结果应该拿到的项目也拿不到手;也有的虽然已经接到了项目,却发现在实施开发的时候遇到好多从来没有遇到过的问题。作为一个多年从事外包项目接单的软件开发人士,我想从以下几方面谈谈我的经验,希望对大家会有所帮助。
第一点, 到哪里接项目
软件团队或SOHO最为关心的一点是在哪里可以找到项目做,也就是到哪里可以找到有外包需求的客户。对于一般人来说,广交朋友然后通过熟人介绍还是接项目的第一途径,但这要求你的朋友或熟人要在企业或公司里有比效重要的管理位置,对于像那些每天只能是埋头写代码的程序员这显然是不太现实的。所以大家不能等着项目来找你,而是要主动的出击去找项目。
现在网上有很多软件外包网站,在这里你可以找到不少的软件外包信息。比如GAF(即Get A Freelancer - 是目前国外最流行的外包站点)上就有大量的软件外包信息。不过这里每天外包的项目虽然很多,但竞争也很激烈。一般一个外包信息发出后一天内就会有无数个竞争者(很多印度阿三在和你拼报价),所以能第一时间与客户取得联系是非常关键的。因为客户一般都是先入为主的,一般来说,如果第一个谈项目的人他觉得满意了,就会对其他的竞争者不再予以考虑,所以你要经常上网站上看看有什么最新的项目,并立即与项目的发包方取得直接的联系。其他比如Elance、GetACoder、ScriptLance
上也有很多外包的信息,大家可以自己上去看看。
是不是第一个联系了客户就高枕无忧了呢?也不完全是这样的。前面说过了,一个项目总是有很多人去竞争,就算是你抢先联系了客户,但可能后来又有不少人也同样联系了他,而客户在这种情况下一般是处在比较犹豫的情形之中,这时,你就要经常不断地联系客户,不断地征询客户的意见,询问客户的项目需求,把你对项目的理解也经常与客户交流。这样,客户会觉得你比较有诚意来接这个项目,就会比较倾向于把项目交给你来完成。有时,与客户拉拉家常,也会拉近你与客户之间的距离。说不定你会意外发现客户原来还是你的老乡,那就更好谈了。总之,如果你想要想争取到项目,就要经常不断地与客户保持联系,直到最终达成意向。
接项目最重要的一步是与客户谈需求。客户对软件的需求是项目规划和实施的根本,所以在与客户谈需求时,一定要让用户将所有的想法尽可能的阐述清楚,并把所有的要求罗列出来。这时候不应该害怕勾引起客户的潜在需求而增加设计开发的工作量。而应该直接明白地要客户把项目的要求一条条地列出来。这时先把条理、归纳、分析先都扔到一边去,用纸笔将用户最原始、最完整的要求准确地记录下来。假如项目在你对客户的需求没有完全了解清楚的情况下就匆匆上马,那么就会随时发生意想不到的变更,轻则使项目延期或超出预算,重则使得原来已经做好的软件要彻底推倒重来。
所以我们在实施项目之前应该深入了解和挖掘客户需求,对某些不明确的需求要与发包方反复进行讨论,对于项目实施过程中的需求变更要规定处理办法,并形成项目的最终需求。在需求分析阶段,接包方首先对发包方的需求认真分析,然后通过业务建模、会谈、问卷、需求会议等方式收集客户完整需求,形成文档,然后经过客户讨论、客户审查、文档修订等多次反复的过程。有一点需要注意,即使双方谈的很投缘,在讨论需求时也一定要详细周到,精确到每一条不能再划分的软件功能为止。
要消除客户的疑虑
- 作为客户,他对于项目的承接者总是存在各种疑虑。比如,这个项目究竟承接方有没有能力开发啊?项目组人员是否有这方面的经验?是否作过类似的产品,是否有这方面的技术能力?会不会只是骗了预付款就开溜啊?最后完成的项目能不能达到自己的要求啊?我们作为承接者,就是要千方百计打消客户的这种疑虑。比如,你要经常准备好一些成功的案例和以前的项目的DEMO,就是把你以前成功完成过的项目,做成一个DEMO给客户看,让他觉得你是有能力完成类似的项目的。俗话说,事实胜于雄辩,把你以前做过的类似的项目DEMO给他看,好过你一遍遍空口的承诺。因为软件开发的过程中谁也不能保证一点问题不出,相比较而言,一个有经验的开发人员会更容易得到客户的信任。因为你已经有和客户的项目功能接近的案例,无疑会缩短开发周期,技术上有更好的保障,因此客户也更乐于把项目交给你。所以,程序员平常必须多花点时间和精力,搜集整理以前自己做过的项目案例,并把它们分门别类地整理出来,遇到同类项目的客户,就可以给客户进行演示,这样客户就会放心把项目交给你了。另外,把团队组成人员、技术能力、经验等客户看重的东西整理出来并给客户看,也能够对争取到项目起很大的作用。
在完全了解客户的需求后,下一步就是要确定一个合理的报价。接包方要从跟客户的交谈中尽量地了解出客户的准确意思,思考客户想要的是怎样的一个软件,项目复杂的程度多大,客户的要求有多高,客户的性格如何,能够接受的价格范围等等,这些因素对于软件项目的报价都是密切相关的。如果客户要的是一个小型的软件系统,不太苛求有多全面的功能,只要满足某一方面的需要,并且客户又是一个比较随和的人,那么项目可以报一个接近成本的价格;相反如果客户要求的是一个面面俱到的管理系统,需要有各方面的功能,缺一不可,并且客户又是那种对项目要求严格苛刻,绝不变通的人,那就要充分考虑各种不稳定的因素,报一个比较高的价格。
在很多的情况下,客户在跟接包方谈项目之前,心理都已经有一个价格底线。如果要投入的费用超过了客户的预算范围,客户将不再与你谈该项目,他会转而找其它软件团队商谈。所以跟客户谈项目的过程中要迅速地思考客户需求的真正含义,能够通过某种转换和变通,把客户对于技术的要求与自己团队的技术力量可以接受的价格相对比,从而得出一个双方都能接受的报价。在与客户的谈判当中,灵活变通是成功的关键之一。当然并不是所有的客户都可以通过变通而满足,遇到客户不认同项目费用的情况一定要处之泰然,真诚地为客户解释,把客户的需求细化为技术上的要求给他分析,让他同意你的报价的合理性。即使客户对编程技术不是很了解,但经过你的细致的分析后也会对你的报价表示认同的。
⑨ 软件编程可以自己编程序卖钱吗
可以,一种是接外包项目。二自己做产品经营 这个比较难。
程序员只能应付编码,对软件的外观设计,具体文案,艺术效果,音频录音是没有对付能力的。
⑩ 如何开发软件
目录部分1:掌握诀窍1、确定你对哪一种软件类型感兴趣。2、自学编程语言。3、找到有助于学习的资源。4、上培训课。5、做个人喜欢的项目。6、提问。7、每天练习。部分2:开发程序1、寻找灵感创意2、编写设计文档。3、创建原型。4、反复测试。5、完善项目。6、将你的项目上传到GitHub。7、发布你的软件。部分3:获取工作1、接临时工作。2、尽可能地多社交3、应聘全职岗位。4、丰富你的技能组。5、不要担心薪水。软件开发工程师是一份报酬优厚的工作,他们所具备的技能很有市场。那么他们到底是做什么的呢?如果你的薪水远远低于他们,不妨加入他们的行列。你可能会心存疑虑:自己是否具备开发优秀产品所必需的技术知识和受众关联性呢?无须担忧,按照如下步骤逐步执行后,加上一点点的灵感创意,就能成为一名软件开发工程师。
部分1:掌握诀窍
1、确定你对哪一种软件类型感兴趣。软件开发有两大基本阵营,分别是“应用开发”和“系统开发”。应用开发关注的是开发满足用户需求的程序,包括手机应用程序、大型电子游戏及企业级会计软件等。而系统开发关注的则是使用生命周期法来开发和维护操作系统。系统开发通常涉及网络可操作性和数据安全。
2、自学编程语言。任何人都有创意灵感,但开发者能够将创意转化为现实。即便你只想从事软件设计方面的工作,也必须对代码有一定了解,以便能够开发出产品的基本原型。你能够自学的编程语言种类繁多,其中较为实用和重要的有:C - C语言历史较为悠久,但仍被广泛使用,本列表中的其他语言多以C语言为基础。C语言被用来开发低级别程序,其运行与计算机硬件紧密相关。
C++ - 它是C语言面向对象的版本,是全世界最流行的编程语言。Chrome浏览器、火狐浏览器、Photoshop软件,以及诸多其他程序使用的编程语言都是C++。此外,C++也常被用于开发电子游戏。市场对C++开发工程师的需求量一直很大。
Java - Java语言是对C++语言的发展和继承,因易于移植而受到欢迎。几乎任何系统都能运行Java虚拟机,从而能够运行Java软件。Java语言被广泛应用于电子游戏和商业软件,许多人建议将它作为基本语言。
C# - C#是一种基于Windows系统的语言,它是微软.NET框架的组成部分。这种语言与Java及C++关系紧密,掌握Java的开发者能够快速地过渡到C#。它对于Windows软件或Windows手机软件的开发者而言尤其实用。
Objective-C - Objective-C也以C语言为基础,专为苹果系统而设计。被广泛用于iPhone和iPad应用。对于自由开发者而言,学习这种语言是一种不错的选择。
Python - Python是最容易学习的语言之一,适用于网络开发。
PHP - 准确来说,PHP并非软件开发语言,但如果你有志于从事网络开发,它必不可少。PHP开发工程师的就业机会一直很多,但薪水要低于软件开发工程师。
3、找到有助于学习的资源。大部分书店都有编程书籍专区,而亚马逊和其他电子商务零售商也提供了海量选择。质量上乘的编程书籍很可能是你能够拥有的最好资源。从事开发项目时,你可以快捷地查询和参考它们。除书籍以外,互联网也为学习者提供无穷宝藏。在CodeAcademy、可汗学院、 W3Schools、CSDN、开源中国和程序员之家等网站上,都能够搜索到关于你所选择的编程语言学习资料。
4、上培训课。尽管从事软件开发工作不需要有全日制学位,但是在本地培训中心听一下相关课程仍会对你有所帮助。一对一的教学对你大有裨益,而且这些课程会向你提出挑战,要求你解决一些自学时可能不会想到的问题。培训机构会收学费,因此确保你报名的课程有助于你实现自己的学习目标。
尽管许多开发者能够完全依靠一技之长来进入这个行业,但拥有四年制大学的计算机科学学士学位,无疑能够帮助你更快地脱颖而出。大学教育将使你具备更广阔的背景知识,还另外提供数学、逻辑学等其他实用课程。
5、做个人喜欢的项目。将你新习得的编程技能应用到实际工作前,可以先做一些自己的小项目。试着挑战自我,应用编程语言去解决问题。这样不仅可以帮你巩固技能,还能够使你的简历内容更加丰富。例如,试着设计自己的日程表程序来帮助你安排工作,取代计算机自带的日程表程序。
如果你对电子游戏开发感兴趣,可以试着做一些简单的小游戏,不必注重图形或复杂的机制。你的目标应该是使它们有趣而独特。一系列独立开发的小游戏会让你的工作经验增色不少。
6、提问。互联网是与其他开发者进行联系的绝佳方式。如果你在自己的项目上遇到瓶颈,可以上SegmentFault等网站寻求帮助。清楚地阐述你的问题,和已经尝试过几种可能的解决方案。
7、每天练习。每天做做自己的小项目,哪怕只花一个小时。这样做有助于保持状态和不断学习新技术。许多开发者学习语言的成功基础就是每天接触和使用这种语言。每天设定一个专门用于编程的时间,或设定一个完成的时间期限。尽量保证工作日能够每天抽出时间来做你的项目,这样到了周末就可以好好放松了。
部分2:开发程序
1、寻找灵感创意。好的程序会为用户的生活带来便利。看看你现在工作中使用的软件,是否有方法能够让流程更加简单或顺畅。成功的程序必须让用户觉得实用。检查你在计算机上的日常工作。能否使用某个程序来使一部分的工作实现自动化?
记下每个创意。即使某个创意现在看来有些愚蠢或古怪,在未来它可能变得实用,甚至大获成功。
检查其他程序。这些程序是做什么的?如何让它们做得更好?它们缺少什么?回答这些问题有助于你获取自己的创意。
2、编写设计文档。文档概述程序的特征,以及项目计划达成的目标。在开发过程中参考设计文档,可以防止你的项目偏离正轨,专注于正确的方向。关于编写设计文档的详细信息,可以参阅这篇文章。
3、创建原型。原型是一种基础程序,它展示你希望实现的功能。原型是一种快速程序,在你找到合适的设计之前,应当不断迭代更新。例如,你正在开发一个日程表程序,你的原型就应该是一个日期正确,并可以添加事件的基础日程表。在开发周期中,随着你想到解决问题的新方法,或有了更多想要实现的新创意,你的原型会不断改变。
原型无须美观。事实上,在原型中,艺术设计的优先级是最低的。还是拿日程表来举例,你的原型很可能只有文本。
4、反复测试。Bug是所有开发者的烦恼之源。代码错误和预期外使用可能导致程序出现各种问题。在项目开发过程中,尽可能多地对程序进行测试。做各种尝试去破坏程序,然后根据结果去优化程序,避免它在未来因为相同的原因而崩溃。让亲朋好友测试你的程序,并反馈他们的测试结果。任何可以获得反馈的方法都能够为开发工作提供帮助。如果你的程序涉及日期,试着输入奇怪的日期。过去或未来久远的日期可能导致程序出现奇怪的反应。
输入错误类别的变量。例如,你有一份表单询问用户的年龄,可以试着输入汉字词语,看看程序会有何反应。
如果程序拥有图形界面,试着点击所有元素。点击返回上一屏,或以错误的顺序点击按钮会发生什么?
5、完善项目。在原型和开发阶段,粗略的作品就足够了,但是,如果你希望其他人使用你的程序,就得花费一些时间来完善它。这意味着让菜单流程符合逻辑,用户界面(UI)简洁易用,没有明显bug,而且程序整体美观。UI设计和功能可能非常困难和复杂。UI设计已经成为一份工作。你所能做的是确保自己的程序易于使用,看上去不会让人觉得刺眼。而专业的UI则可能必须付出一定的预算,请专业的团队来完成。
如果你拥有预算,可以找到很多有能力设计UI的自由图形设计师为你工作。如果项目颇具规模,希望做出现象级的优秀产品,就必须找到优秀的UI设计师,请他们加入你的团队。
6、将你的项目上传到GitHub。GitHub是一个允许你与其他人分享代码的开源社区。这样做不仅能够让你更加深入地了解自己的代码,还会使寻找相关解决方案的其他开发者受益。GitHub既是极佳的学习资源,又是建立自己作品集的好方法。
7、发布你的软件。产品完成开发后,你可以选择是否将之发布。如今,软件有多种发布渠道,具体取决于你所开发的软件类型。小型团队或独立开发者常常通过个人网站发布软件。确保网站充分展示了程序的所有特性,并包含一些截图和使用教程。如果你要售卖自己的软件,确保你拥有一个运行良好的数字支付系统,以及一台可以分发软件的服务器。
如果你为特定的设备或操作系统开发软件,可以使用各种应用商店来发布。例如,如果你为安卓设备开发软件,可以通过Google Play商店、亚马逊应用商店或个人网站来售卖它。
部分3:获取工作
1、接临时工作。尽管这类工作的薪水和可靠性都低于全职工作,但完成一些临时工作可以极大地丰富你的工作经历。试着上猪八戒和一品威客等网站找工作。刚开始想找到工作可能比较困难,但拿到并完成第一份工作后就简单多了。对于临时工作和自由开发者工作而言,猪八戒是不错的平台。点击主页的“IT/软件”,查看平台上的开发工作。
出低价来获取临时工作看上去或许很有诱惑力,但不要廉价出卖自己的服务。这样做不仅会使你多劳少得,还会得罪同行,不利于建立人际关系。
有时候,在临时工作中表现优异可以带来全职工作机会。在工作中始终全力以赴!
2、尽可能地多社交。尽可能多地去参加行业大会和编程马拉松。这不仅会让你接触更多代码,解决更多问题,还有助于结交业内同行。你可能会想象程序员们在自己的基地里孤军奋战,但实际上,大部分全职的开发工程师会团队协作。在这一行中,建立人际关系同样十分重要。
3、应聘全职岗位。完成几项临时工作后,就可以开始向更大型的机构发送你的简历和作品集,应聘全职岗位了。除了智联招聘以外,你还应该关注专门的程序员招聘平台,例如CSDN JOB、博客园招聘、开源中国招聘等。
4、丰富你的技能组。优秀的软件开发工程师通常精通多种语言。除了在工作中学以致用外,你还可以利用业余时间来自我提升,学习一两种其他语言的基础知识。这样,在过渡到新的项目时,你会感到更加轻松,就业竞争力也会更强。
5、不要担心薪水。不是所有入门级的软件开发工作都有六位数的薪水。事实上,这种工作根本不存在。但是,软件开发工作的优点是就业市场需求旺盛。作为一名软件开发工程师,如果你对自己现有的薪资感到不满,只要你具备相关技能,就可以很容易地跳槽到一家新的公司。你应该利用最初的几份工作来积累必要的经验,而不是关注它提供了多少养老金。