理想的“永远/随处可用”的Web开发环境?

时间:2009-05-02 21:19:52

标签: php development-environment usb-drive

Casus:

如何使用相同的代码编辑和推进,尽可能轻松地从多个远程位置和计算机进行编辑?

我有这个想法已经有一段时间了。当我不得不在不同的计算机上处​​理一个项目时,我经常遇到问题,因为在这种情况下我没有采取任何措施或任何方式让自己放松。这部分是由于我很少做自由职业项目而且通常是小型网站。

想象一下,您需要在家中处理项目,您可以在其中设置数据库,网络服务器,phpmyadmin以及运行应用程序所需的一切。然后你去周末去你女朋友家,但你需要推进这个项目,在那段时间你想做一些编码。

我目前正在做的是我将整个项目归档,通常还有一个数据库转储,并将其放在ftp主机上,以便我可以在以后需要时访问它。我可能没有必要解释这可能是多么乏味,特别是如果你需要在你当前所在的PC上设置整个环境。

考虑:

  • 将我的家用电脑变成启用了远程桌面的开发服务器 - 这个问题是远程连接并不总是很快且非常狡猾,因为为了做RAD,需要它。这也意味着PC必须始终在家中打开,不管我甚至不需要它,如果说,周末有更好的事情要做。我可能需要买一台UPS,因为这里不时发生断电......我已经不喜欢这个解决方案了。

  • 在公共托管服务和结帐代码中创建数据库和SVN存储库。这仍然存在一些问题,因为您可能需要安装软件,SVN客户端,并在每次更换计算机时最终编辑某些配置。哦,和之前的'解决方案'一样 - 你完全依赖互联网访问。

  • 购买Eee PC并随身携带 - 这样您就可以拥有所有环境。也不需要网络。你必须把这个小东西拖到你的周围,即使它很小,也不是你可能放在口袋里的东西。我还认为这些EEE PC不太适合普通编码(小键盘,屏幕等)。

  • 最后,我一直在考虑一个理想的场景,我有一个这样的Linux发行版,它们只有一张CD,甚至是flashdrive。最新的,您可以随身携带所有环境以及所有项目。你可以把它放在口袋里。 Nova天所有电脑都有内置USB端口,相反并非每台电脑都有CD ROM。

考虑到这一点,我认为最后的解决方案是最佳的并且完全令人满意。问题是,我不是非常精通Linux,而且我并没有如此捣乱。特别是flashdrive OS。

底线问题

  1. 您是否同意闪存驱动器是最佳解决方案?我可以投入更好的工作吗?也许我应该重新考虑这种工作方式?:)
  2. 您是否认为像http://www.pendrivelinux.com/这样的flashdrive操作系统适用于此类Web开发环境;是否有更好的操作系统候选人?
  3. 一般从USB启动有什么问题吗?当然我觉得这应该不是大多数PC的问题吗?
  4. 您在同一项目的多个地点工作的个人经历是什么?

8 个答案:

答案 0 :(得分:10)

这是另一种解决方案:携带便携式硬盘驱动器,该硬盘驱动器具有虚拟机播放器和虚拟机的便携式安装,并具有您需要的所有开发工具。只需将其插入任何可用的计算机,启动VM,将其置于全屏模式,您就可以开始使用了。具有不必乱用live-cd或live-usb Linux设置的优点,特别是因为你说你对Linux不是很熟悉。

编辑:你也可以在闪存驱动器上运行你的虚拟机,但性能会很糟糕。

答案 1 :(得分:3)

你真的应该得到一台笔记本电脑并在那台机器上完成所有编码。弄乱上网本和/或拇指驱动器并不是一个长期的解决方案。我有一台MacBook用于完成所有编码。当我回家时,它连接到一台21英寸的显示器和一个完整的键盘和鼠标。当我需要旅行时,我拔掉所有绳子并将其放入我的包里。由于我使用相同的机器,我不必担心来回移动文件或设置,虽然屏幕有点小,但在移动中完成一些工作也不错。

如果我无法携带笔记本电脑,我会在Linux服务器上设置开发环境。但是,此解决方案高度依赖于您正在进行的开发类型以及您对Linux和命令行的熟悉程度。我绝对不建议那些刚开始的人。但是,使用Screen和Emacs(或者如果你以这种方式使用vim),你可以在任何可以访问互联网的地方拥有一个成熟的开发环境。

答案 2 :(得分:2)

笔记本电脑:太贵了,键盘太小,对代码感到烦恼。

遥控桌面:你会感觉到滞后,甚至几分之一秒,你会在一天之后疯狂。

SVN:总是需要在任何地方安装相同的软件(存储库客户端,FTP,文本编辑器,mysql等)太麻烦了。

我的解决方案是我个人使用的... USB闪存盘!

安装所有软件的便携版本。我设法找到了我需要的所有东西的便携版本:

Kitty(SSH)

Filezilla(SFTP)

USBWebserver(Apache 2,PHP 5,Mysql 5,PHPMyAdmin)

Notepad ++ 5,Eclipse PDT(PHP IDE)

SNES9X(snes模拟器);)

Keepass(密码加密数据库事物)

HeidiSQL(类似于PHPMyAdmin)

菜单(一个小系统托盘菜单)

我所有项目/音乐/笔记的目录

这是good link,我找到了大部分软件。

P.S。适用于Windows和Linux(通过葡萄酒)。我还在其上放了一个autorun ini文件,所以当我插入它时,我的系统托盘菜单程序运行并启动apache / mysql。

答案 3 :(得分:1)

我认为SSH是一切的答案。它让我可以完全控制我的服务器,无论我的位置如何,它使我不仅可以访问shell,还可以上传和下载文件,以及使用端口转发。

如果我只需要做一些快速调整,我通常只需要SSH到服务器并使用nano或类似的东西进行编辑。结合屏幕,它实际上可以是一个令人惊讶的高效环境。

当我需要做更认真的工作时,我会下载notepad ++(免费)和expandrive(相当于sshfs的Windows,可用30天演示)。这允许我远程编辑本地硬盘上存在的文件(尽管它需要良好的连接)。很有成效。 :)

答案 4 :(得分:1)

上网本怎么样?我听说Scott Hanselman喜欢使用一个效果很好来运行Visual Studio和SQL Server进行ASP.NET开发,所以我相信它们会足够强大以满足您的需求。

屏幕尺寸可能是一个限制,但更小,更轻的单位的巨大优势。 Asus Eee 901已被我工作过的几个人推荐。

答案 5 :(得分:1)

我将Dropbox用于与安全无关的代码项目。

至于开发环境,我的需求很少,所以Notepad ++的副本通常就足够了。目前,这是在我使用的每台机器上本地安装的,但我已经玩弄了在USB驱动器上使用便携式安装的想法。

然而,您的需求比我的需求复杂得多,在我看来,建议的笔记本电脑可能是您的最佳选择

答案 6 :(得分:1)

我认为开发者计算机就像游泳衣。你很清楚你使用的那个不是你的。此外,众所周知,我们发现的任何计算机都有很多可能性会影响我们的假设以及我们的USB / VM选项的一致成功。我认为大多数人会同意这将取决于我们项目的优先级以及我们对在特定时刻未能运作的可能性的容忍度。

答案 7 :(得分:0)

简单回答:一台笔记本电脑。是的,它不像手机那么小......但它让你的编码变得如此简单。

相关问题