Live data from Hacker News

Ask HN: I'm starting a new job as a PHP developer tomorrow

news.ycombinator.com

21–30 of 96 posts

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#21
Based on your post, my concern is that you will stick out as a "sore thumb" insisting on using Arch Linux in a Windows shop. Basically, you are signaling to your employer and coworkers that you will be difficult to work with.

Please spend first 90 days building a good reputation and impression for yourself with your supervisor and coworkers and later use your reputation to drive any changes. By insisting on using Arch Linux, you will be wasting yours and others time in accommodating your preferences in recreating the workflow and tools that everyone else is used too.

You should focus on learning the tools and workflow used by your employer. You are no longer a freelancer who can chose their own tools and workflow, you are a cog in a machine now and learn how machine operates.

Your first priority should be to learn Windows and Development tools used by your coworkers. Find out what PHP framework and technology stack being used. And learning them is your next priority.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#22
post #21

Based on your post, my concern is that you will stick out as a "sore thumb" insisting on using Arch Linux in a Windows shop. Basically, you are signaling to your employer and coworkers that you will be difficult to work with. Please spend first 90 days building a good reputation and impression for yourself with your supervisor and coworkers and later use your reputation to drive any changes. By insisting on using Arc…

The company likely has a processes setup around the fact that everyone is running their dev environments the same way. Trying to do things differently without yet understanding their process will only complicate things.

For example, at my job everyone runs OS X, so build scripts, etc are all written with that assumption in mind.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#23

What about the fact that they all are using Windows on the desktop? I'm a Linux person and I can't use anything else. I've been using Linux for 15 years. I asked if they can let me install Linux on the computers, they said I have to use a VM. I'm fine with a VM but I also need my window manager of choice (i3-wm) and so on. Would it be okay if I install Arch Linux on VirtualBox and I fullscreen the VM? What about perf…

I think it's really strange that you can not install linux or bring your own laptop. Maybe you should have second thoughts if you'd like to work at that place.

That said, I think you will be able to adjust if you want. Just use vim on Windows, or use sublime with vim keybindings. You can also use a VM fullscreen. Works fine, I've done it before.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#24
Bringing your own hardware is not allowed in the majority of places (not located in SV). Its a security matter. Running a VM is fine. That shows they are flexible. you might run into issues if their whole development environment is built around windows and windows tools. Be open to it.

PHP is a language like any other. it has good and bad parts. what might prove useful is to focus on learning the codebase.

Good luck!

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#25
post #22
post #21

Based on your post, my concern is that you will stick out as a "sore thumb" insisting on using Arch Linux in a Windows shop. Basically, you are signaling to your employer and coworkers that you will be difficult to work with. Please spend first 90 days building a good reputation and impression for yourself with your supervisor and coworkers and later use your reputation to drive any changes. By insisting on using Arc…

The company likely has a processes setup around the fact that everyone is running their dev environments the same way. Trying to do things differently without yet understanding their process will only complicate things. For example, at my job everyone runs OS X, so build scripts, etc are all written with that assumption in mind.

Agree with you 100% and that is the point of my comment. Understand the tools, workflow and processes used by the employer first.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#26
post #19
post #15

Don't worry. PHP itself shouldn't be an issue. It's bog standard ALGOL-y syntax with some weird corner cases that aren't that hard to avoid. The bigger gotcha will be getting used to the execution model, if it's standard LAMP-y type application hacking. Remember that, in this style of app, all of your state has to be either explicitly stored in a backend or in the browser cookies. The script begins not knowing anythi…

Aren't there pretty popular PHP frameworks that take care of magic like parsing variables and routing URLs and persisting state?

Of course, tons. But there's also a lot of PHP out there that doesn't use frameworks. Knowing how things like sessions and headers and requests actually work is probably more immediately useful for PHP than other languages, for which there's likely one de facto framework that everyone uses by default.

In PHP-land you're just as likely to walk into a job where interns have been hacking crazy stuff into a Simple Machines forum for the last year as encounter something built on a framework. And of course, mixing javascript, css and php together with whatever happens to come out of a database query (which is encoded in who knows what) is not at all uncommon, so even frontend knowledge is helpful.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#27
> it's not my decision, and there aren't many local jobs in my area, so I'm taking what I can, and that's work with PHP at the moment.

> I asked if I could install Arch Linux on bare metal but they said no. They said I have to use a VM. They also mentioned I can't bring my own hardware.

Beggars can't be choosers :(

Whether your Linux VM setup is acceptable will depend entirely on what the rest of the shop is used to. For example, if they develop on Windows desktops and deploy to Windows servers, you may need to use Windows scripts and test for Windows-specific corner cases, which would be difficult to do on a Linux VM. You may need to adjust all of your tools to use Windows line endings (CRLF). You may find that some of your tools don't work correctly on a vboxsf or samba filesystem. Be prepared to make compromises where necessary.

On the other hand, if they deploy to Linux servers, your knowledge of Linux and your VM might end up being a valuable asset for the shop.

In any case, don't say that you "can't use anything else". Of course you can. Learning to use a new OS or editor is not terribly different from learning a new language. If you can learn a new language, you can certainly learn to use Sublime Text or whatever.

Unwillingness to try a new tool just because it's outside of your comfort zone could reflect poorly on you, no matter how well justified you think your choices are. Your employer has shown flexibility by letting you run a VM. Try to show some flexibility in return.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#28
post #21

Based on your post, my concern is that you will stick out as a "sore thumb" insisting on using Arch Linux in a Windows shop. Basically, you are signaling to your employer and coworkers that you will be difficult to work with. Please spend first 90 days building a good reputation and impression for yourself with your supervisor and coworkers and later use your reputation to drive any changes. By insisting on using Arc…

I stuck out at my job using Emacs with C# and did just fine. A lot of experienced developers have their favorite dev environment. I've never seen it used against them.

I spent my own time, i.e. lunch breaks, adopting the company workflows to my dev environment.

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#29
post #21

Based on your post, my concern is that you will stick out as a "sore thumb" insisting on using Arch Linux in a Windows shop. Basically, you are signaling to your employer and coworkers that you will be difficult to work with. Please spend first 90 days building a good reputation and impression for yourself with your supervisor and coworkers and later use your reputation to drive any changes. By insisting on using Arc…

Not only that, being so adamant about using Arch Linux would make you look ignorant/partisan. Now don't get me wrong, I'm more likely that most to make a stink about not being able to use Linux on the job, but you can still get most of the important tools on a Windows box: Unix utilities (cygwin), nice tabbed terminal (Console2), GVim, Emacs, Perl, Python, Ruby, etc. One tool I lean on heavily is the Silver Searcher (granted, you could could install Perl/App::Ack) and I was able to even quickly find a Windows port of that just now: https://blog.kowalczyk.info/software/the-silver-searcher-for...

Given the availability of most of the good stuff on Windows, I don't think my workflow would change very much if I were forced onto a Windows box right now, apart from the occasional bummer about some bleeding edge software being unported or some library assuming Mac/Linux. Indeed, it was being forced to work on a Windows machine for a couple years that made me switch from TextMate to Vim (it made sense to become proficient with a single cross-platform editor).

Re: Ask HN: I'm starting a new job as a PHP developer tomorrow

#30
I did this mistake once... I'm also a linux guy, but I was working in a company where everyone was using Os X. I did install an arch on my laptop and used it for almost a year.

Now, with the hindsight, it was a big mistake : it did make me loose so much time ! I did had to fix one script out of 2, the build system was not working properly, etc... And linux and Os X are not that different !

Don't do that... Use the tools that you company gives you, and try to fit in the company. Otherwise, you will be seen as the guy who does not want to do stuff the same way as the others. Even if everything goes well with your coworkers, you will end up waisting time every day.

You can install vim on windows (and sublime text does have quite a few almost decent vim plugins). You will miss i3wm a lot, but you don't need it to do good work.

Learn how to use the most efficiently the tools your company gives you (Windows and PHP). If you want to change something (at least for your first couple of month), try to change something that will make everyone life easier, not more complicated.

Post reply on HN