
大二的时候学习 Python,win 下开发,然后被安利了 linux。后来装个 ubuntu 作为日常开发就天天瑟,事实上 linux 的环境对于初学 Python 帮助确实不小。这时候痛点就是没 QQ 啊(忽略 wine 版),跟同学转发个文件总说一下发我邮箱别发 QQ,然后就十分羡慕使用 mac 进行开发,各种环境也 OK,QQ 微信也都是有的。
实习后就是使用 mac 进行日常开发,确实方便很多啊,用着用着觉得 Python 开发环境就是这样的,似乎忘记了使用 Windows / linux 的痛,再后来就觉得用 mac 开发血统不纯正啊,用 linux 才够 geek。
然而现在真的换了一台非 mac 电脑,先折腾某 linux 发行版:我去 ss 有问题啊,几小时后终于可以越过墙了,麻蛋想要个 PAC 模式就这么难吗,然后以及遇到了其他问题 -> 没信仰了换 win 10:卧槽,依赖有问题啊,项目在 win 下 run 起来都费劲,然后就上 linux 子系统或者虚拟机解决呗,然而又带来了新的问题.....
请问各位大佬们都是使用什么系统环境进行开发,这些痛点是怎么解决的呢?(非引战,意在学习与讨论下大家的解决方案)
1 mrlcy 2018-05-27 23:43:27 +08:00 via iPhone 项目部署在什么环境 ,就用什么环境测试开发。 |
2 jerrry 2018-05-27 23:49:39 +08:00 via Android 换回 mac |
3 gobomb 2018-05-27 23:57:09 +08:00 via iPhone mac 是最方便的,图形界面和命令行终端都很好用。需要 linux 的时候,搞台云主机 ssh 上去就 ok,比虚拟机的方案好。 |
4 easylee 2018-05-28 00:23:01 +08:00 反正我是信了程序员要轻松省事就上 mac 的邪。 |
5 param 2018-05-28 00:27:18 +08:00 via Android 我推荐 ArchLinux。Linux 可以通过 iptables 设置全局代理。 |
6 hourann 2018-05-28 00:45:48 +08:00 via iPhone 从我目前接触过的项目来说,win 做 python 开发没什么痛感(除了项目要用到 Docker 外)。一些要编译环境的包可以下预编译包,除非一些库没对 win 做支持,大部分问题都能搜索一下解决。你在其他平台也是要踩坑的。但是有条件上 mac 还是用 mac,不输 windows 的 GUI 软件生态和碾压 windows 的开发环境搭建过程 |
7 rabbbit 2018-05-28 00:50:36 +08:00 Windows 下(别的没用过) 1 lxml 之类的库装不上,装 anaconda 即可解决 2 编解码问题,什么 GBK Bom 头,踩两次坑习惯了就好 |
8 RqPS6rhmP3Nyn3Tm 2018-05-28 00:53:59 +08:00 via iPad Arch 好用,但是没基础不要碰,安装都装不上 |
9 rb6221 2018-05-28 01:05:08 +08:00 via Android 还有正统这一说?所有的安装包不都是官方释出的? 等你工作多年换了几家全是不同的环境就知道了,什么系统从根本上没区别,都是做同一件事而已 |
10 dex2jar 2018-05-28 01:08:50 +08:00 via Android 装着 win,用虚拟机搞 linux 无压力 |
11 magiclx 2018-05-28 01:09:06 +08:00 PyCharm 横跨 win mac linux,可考虑购买部署环境相同的版本进行开发,需要查阅文档时,使用 横跨 win mac linux 的 FireFox,办公文档可 online,此外再无难处。用什么 OS 其实都可以,要说难点,就在于不熟悉 OS,不熟悉 Python 库,不熟悉约定,英语不够好咯。 |
12 LongLights 2018-05-28 01:26:47 +08:00 via Android 我前几天也是刚开始使用 Linux 然后 ssr 的 pac 模式用不了真是蛋疼。。。然后 sublime 的 sidebarenhancements 快捷键用不了真是蛋疼。。。然后我就把 win 装回来了 |
13 unlimitedsola 2018-05-28 01:49:24 +08:00 via Android > 再后来就觉得用 mac 开发血统不纯正啊,用 linux 才够 geek。 炫耀驱动编程?够用还不可以? |
14 ericgui 2018-05-28 01:57:22 +08:00 这个很好,顶上去。 要知道,Windows 环境下玩 Python 真的是太 TM 痛苦了。其他都不说了。 Mac 要是有钱买,还是买 Mac 吧。 |
15 debuggerx 2018-05-28 02:34:52 +08:00 日常 deepin,写好的程序如果需要跨平台就通过 git 传到 vmware 里的 mac 和 win 去测试打包…… 不过确实各个平台有各自的问题,最近一个月左右碰到的有: ①linux 下 pyqt 写的程序默认无法直接输入中文。 ②mac 下 pyqt5.8 以后直接复制文本框的内容出去会带 bom 头 ③win 下用 pyinstaller 打包 magic 库路径无法正确识别 dll,只能改 magic 加载 dll 相关源码 总的来说 win 的问题是最多的,花的时间最多。mac 好一些,只是习惯了 linux 包管理安装开发环境的方式以后觉得 mac 太废,brew 总是出问题和 apt 没法比。linux 门槛确实高一些,有一定积累之后会非常得心应手。 另外搞不懂为什么那么纠结于 pac,日常全局模式使用非常爽,经常用了一整天忽然要访问内网服务不通才发现原来是开了全局 ss,一个快捷键临时关闭代理,完事了快捷键再开,完全 ojbk |
16 lunafreya 2018-05-28 02:34:58 +08:00 via iPhone Linux 就 Ubuntu, 别折腾 arch, 浪费生命 |
17 debuggerx 2018-05-28 03:08:26 +08:00 @debuggerx ss 的 pac 问题可能是因为官方只给 linux 做了 ss-qt 没有 pac 相关的支持吧,别的发行版怎么样我不清楚,deepin 社区有人仿照 win/mac 的客户端做了个 deepin 专用的小飞机,以前简单测试过应该是能用的: https://github.com/PikachuHy/shadowsocks-client 不过因为我自己很早以前就克隆了 ss-qt 的源码添加了一些自己需要的功能代码(自动设置系统代理参数,响应快捷键等)后编译自用得很爽,所以并没有换他这个来日常用。而且最近用了谷歌 outline 方案之后发现完全用命令的方式调用 ss 库挂代理也挺方便的。 |
20 trn4 2018-05-28 04:16:05 +08:00 via iPhone 开发的话只有 win 不正统吧…… |
21 congeec 2018-05-28 04:36:48 +08:00 你水平还是不够,驾驭不了 Linux 和 Windows。Geeky 有啥用,能讨妹子欢心么?还是老老实实用 Mac 写代码赚钱,有钱了买 Windows,Linux 设备各来一套 |
22 suantong 2018-05-28 05:38:26 +08:00 via Android Mac 血统不纯正?什么血统? |
23 msg7086 2018-05-28 06:10:26 +08:00 Python 开发,你说的是写还是运行? 写的话,哪个方便用哪个。 运行的话,生产环境用哪个就用哪个。 我偶尔要写 Python 的时候,Windows 下 Sublime 写完,生产环境 Ubuntu 12.04 下运行看效果。 |
24 chiu 2018-05-28 06:28:45 +08:00 via Android 目前日常跑的 linux,在 x230 上 |
25 clino 2018-05-28 06:57:45 +08:00 via Android 要说我有什么痛点,目前没有 用的 ubuntu |
26 janxin 2018-05-28 07:13:51 +08:00 via iPad 看你的需求。 windows 最大的问题是如果运行环境不一致就很蛋疼不如干脆上 linux,subsystem 也是有很多问题的。对于初学者而言,win 也是最难用,会出最多问题的系统。 linux 没什么蛋疼问题。 mac 蛋疼的问题是如果是要上 tf 之类的只能写和用模型,想用 mac 训练模型?趁早换系统。 当然你只是写不运行当我没说。用什么都一样反正都有 vscode/sublimetext |
27 blless 2018-05-28 07:15:48 +08:00 via Android 有些库比如 sanic,win 不兼容。mac 不确定,linux 肯定没问题 |
28 droiz 2018-05-28 07:31:35 +08:00 via iPhone 程序需要运行在 win 上就用 win 开发,否则就是 mac,除非你对 mac 极其讨厌或者对 linux 有信仰。年纪轻轻干什么不好,为什么非要把时间浪费在配 linux 环境上呢? 讨论某个操作系统的血统问题 /或者够不够 geek,这是病,得治。 |
29 loading 2018-05-28 07:40:54 +08:00 via iPhone 生产环境一致,别出一些诡异问题了,都不知道怎么死的。 |
30 doubleflower 2018-05-28 08:13:28 +08:00 via Android @droiz linux 要什么配置? |
31 murmur 2018-05-28 08:16:16 +08:00 web 相关的库出兼容性情况不多 但是 python 是个胶水语言 很多非纯 python 的库 都带了 c 的 lib 这就不好说了 考虑到*nix 系统的尿性 跟生产系统一致的 linux 才是正统 |
32 zsj950618 2018-05-28 08:17:08 +08:00 via Android > 用 linux 才够 geek 说明你还不够 geek,不会用 linux。 要么老老实实学一下 linux 基础。要么老老实实用 mac。 |
33 zsj950618 2018-05-28 08:21:02 +08:00 via Android |
34 fentensoft 2018-05-28 08:23:03 +08:00 via Android 用的 Arch,SS 用的 MEOW,所有海外流量全部代理 |
35 zynlp 2018-05-28 08:40:32 +08:00 via iPhone docker 万岁 |
36 gaMe5hGLc86G4U52 2018-05-28 08:53:00 +08:00 Ubuntu 下的 PAC 我还没弄会呢,楼主会了可以开个教程,ss 感觉在 Ubuntu 上就是个壳子。 |
37 simple2025 2018-05-28 08:54:40 +08:00 @zynlp windows 不好用 docker 吧 |
38 keysona 2018-05-28 08:59:24 +08:00 迫于穷,我大学也是这样想的。期间装了很多发行版。 工作后,立马叛逃到 mac 了。 |
39 ctro15547 2018-05-28 09:14:02 +08:00 win 读写中文有编码问题,py3 好像好些了,不过开发环境是 py2,所以一直用 linux 写,而且部分库对 linux 支持比 win 好。 传文件的问题可以用手机 qq 接,usb 从手机里拿。ss 问题,一台手机或路由器做中转完事,闲功夫折腾转发。没用过 mac,或许有图形界面,各种完善的工具,可能会更好些吧 |
40 chesterzzy 2018-05-28 09:16:35 +08:00 我用 linux 虚拟机。反正如果计算量大我就放到组内服务器去跑。 |
41 pony279 2018-05-28 09:18:13 +08:00 full time linux 一年了。 我用 debian。没发现有那么多问题。有问题的都能自己解决。 |
42 wlwood 2018-05-28 09:18:57 +08:00 嗯,可能,需要换 Go 吧。跨系统编译,(逃。。。。 Mac 还好吧,有 QQ,有微信,又有终端。没啥正统不正统的(不过,我还是更喜欢 linux 些) Windows 下 Python,反正用的不舒服。 目前 linux 下为主,Windows 为辅。 Linux 下的问题: 1. qq,我用 vbox,装 xp,里面开 QQ。其实还好,XP 精简,不怎么卡。 2. 微信,网页版。 3. ss 的 PAC 模式,这个一般,我就自己收集下。保存到个文件,然后,就导入到代理的配置里面去就好了。 其实更主要是,什么用的不爽,Linux 下自己折腾到自己爽为止。其他系统不太好搞啊 |
43 Norie 2018-05-28 09:19:26 +08:00 等 mbp2018.。。 |
44 chaleaochexist 2018-05-28 09:25:02 +08:00 只针对 python 来说,用习惯了都一样. 引申来看的话,只是 windows 支持的 GUI 客户端多一些,linux 支持的 service 多一些. 譬如 - linux 上的很多 GUI 客户端只能找跨平台的,sourcetree 只支持 mac 和 windows. - redis 原生支持 linux, windows 的话只能在 github 上找 windows porting. 另外还取决于项目,有一些项目只支持 linux... 譬如 ralph 目前还没听说哪个项目只支持 windows 的. |
45 spkinger 2018-05-28 09:26:57 +08:00 win+Linux 虚拟机了解一下 |
46 Marmot 2018-05-28 09:30:13 +08:00 三个平台都用过,docker 万岁 |
48 fy 2018-05-28 09:34:18 +08:00 真解决方案:Vagrant 说 Docker 的,Docker 不是为开发做准备的,而 Vagrant 是。 当然我这种玩游戏的懒人选择 Win10 + WSL |
49 dychenyi 2018-05-28 09:53:40 +08:00 最好的方式 win10+虚拟机。虽说 mac 也有虚拟机,但周边日常软件始终丰富度不如 win。 |
50 raptor 2018-05-28 10:00:46 +08:00 mac 和 linux 用起来都很顺,windows 没法用 |
51 Muninn 2018-05-28 10:19:57 +08:00 说 docker 的又没让在容器内开发。 只是在容器跑测试环境而已。 总的来说 mac > win10 > linux 我都用过很久 win10 可以在自带的 ubuntu 上跑测试 也可以在 docker 里跑。 |
52 mengzhuo 2018-05-28 10:29:18 +08:00 真工程师是不会被这些束缚的 我公司开发用 Win+Cygwin,Ubuntu 原生 在家用 Mac |
53 SupperMary 2018-05-28 10:32:45 +08:00 via Android win 编码问题,没解决。 |
54 alexsunxl 2018-05-28 10:37:26 +08:00 arch +1 有两 win,一 mac,一 arch |
55 bbsteel 2018-05-28 10:43:24 +08:00 via Android 看起来你用 linux 的痛点就是没法转发文件,在三个系统里,这个是最容易解决的吧。ftp,邮箱,网盘哪一个解决不了。 N 年没用 qq 的人路过。 |
56 UnknownR 2018-05-28 11:09:32 +08:00 你看电影美剧里,程序员用 macOS 的比例可不少,比如碟中谍,硅谷,黑客军团这些,macOS 可是很 geek 的,看你怎么用了 |
57 Alexhex 2018-05-28 11:35:04 +08:00 各位大佬,我是一个新手自学者……目前试图在 mac 下面装 Python3 的时候遇到了这个问题: https://stackoverflow.com/questions/49093290/attempted-install-of-python-3-via-homebrew-fails-on-mac-os-x-sierra 请问该如何解决。。 |
58 ftexplore 2018-05-28 11:45:25 +08:00 用什么系统都可以啊,解决问题就好。我个人一般生活和开发用 windows。然后代码托管、maven 服务器等一系列工作或者自己需要的服务,跑在额外的一台配置很低的 linux 上面。 |
59 crb912 2018-05-28 11:52:51 +08:00 via Android 服啦。ubuntu 写 python 不是美滋滋么?有啥痛点,搞不懂。 |
60 xpresslink 2018-05-28 11:53:11 +08:00 如果你 GIT 用得很 6,至少会 HOOK 啊,Pythcharm 的环境管理远程调试部署,会 wmare ESXi,docker,云平台操作。 LINUX 和 Windows Server 都有搭建服务的能力。 我不信你会有什么痛点。 总结一下,你的痛点来自于你自身技术水平的限制性,不要怪操作系统。 |
63 mcfog 2018-05-28 12:12:09 +08:00 桌面环境和运行环境的操作系统是两回事,前者 mac > win >>>>>> linux,后者 linux=docker>>>mac>>>>>....>>>>>>win 所以懒得折腾选 mac+mac 学生没钱选 win+linux/docker 备选 mac+linux/docker 以上 |
64 aristotll 2018-05-28 12:28:20 +08:00 @chaleaochexist #44 win32 binding |
65 Alexhex 2018-05-28 13:34:21 +08:00 @crb912 感谢。当时没敢升级是因为听说 Mac 会依赖自带的 python 2,怕升级引起问题。而且不知道为什么不能平行的安装 python 3。上午找文章看了看应该是没有这种担心的。 |
66 swulling 2018-05-28 13:51:54 +08:00 via iPhone MacOS 是正统的 UNIX |
67 recall704 2018-05-28 13:56:05 +08:00 docker 解决一切 |
68 gogo81745 2018-05-28 14:02:21 +08:00 via Android 用 pycharm 支持远程 python 解释器的功能 在 wsl(windows subsysyem linux)装 python,嫌弃 wsl 不好的话上 vps、虚拟机都行。 https://juejin.im/entry/59352f62ac502e0068b12630 |
69 gogo81745 2018-05-28 14:03:13 +08:00 via Android 谁说开发机就一定得装 py 来着(斜眼笑) |
70 msg7086 2018-05-28 14:19:23 +08:00 @lvhuiyang 我就是 Sublime 裸撸,然后 Syncthing 自动和 Linux 下的目录双向同步,直接在 Linux 下运行看结果。 Windows 上没有安装任何提示和运行环境。 不过我本来就不是 Python 程序员,所以可能参考意义不大。 |
71 Rob007 2018-05-28 17:02:14 +08:00 搞两台机器,一台 Ubuntu,撸 Python,一台 windows 日常办公 |
72 ytmsdy 2018-05-28 17:09:05 +08:00 在 windows 下写了 2 年 python 的默默路过。。。 装一个 pycharm 就可以了,虚拟环境,包管理,命令执行全部交给它就好。真心好用 |
74 limbo0 2018-05-28 18:32:28 +08:00 via Android mac 没痛点 |
75 jiangnanyanyu 2018-05-28 18:41:36 +08:00 via Android 在 win 下开发 Python 的是不是不要活了。。。 |
76 PythonAnswer 2018-05-28 19:24:08 +08:00 via iPhone 先做到自己人肉跨平台,程序才能跨平台 |
77 sudoz 2018-05-28 19:24:47 +08:00 Linux/macOS 无痛 Win 很痛 |
78 geelaw 2018-05-28 19:31:53 +08:00 via iPhone macOS 是正统 UNIX。 我没用过 Linux 和 macOS 做开发,实际上我几乎不怎么开发,不过就我有限的经验来看,Windows 下的问题大多是很多人懒得支持 Windows 弄的,直接把自己的代码绑死在 UNIX/POSIX/Linux 上。 |
79 conn4575 2018-05-28 21:19:40 +08:00 via Android 请一定要用 pycharm,不管你用什么系统,py 环境在哪里,pycharm 的远程编辑远程调试功能都可以帮你搞定 |
80 msg7086 2018-05-29 02:34:42 +08:00 @lvhuiyang 我们的 Python 程序都是跑在比较底层的,日常以打 log 为主。 我是 Ruby 程序员,不懂 Python,所以写 Python 的机会不是很多,一般打 log 就够用了。 |
81 sunzongzheng 2018-05-29 09:14:07 +08:00 via Android 初装 ubuntu,配置翻墙,我的顺序是: 去 githib 下 ss-qt,ubuntu 系统设置“全局”代理。然后就可以为所欲为配置了 |
83 lazydao 2018-05-29 10:12:02 +08:00 其实你自己已经能找到最适合自己的一套环境了,只是年轻,瞎 jb 折腾,不需要发帖问别人 |
84 southsala 2018-05-29 11:42:29 +08:00 mac |
86 salamanderMH 2018-05-29 16:09:20 +08:00 windows 下有 wsl 了 |
88 SingeeKing PRO 用了 Mac 才知道用 Windows 和 Linux 开发多么不舒服 |