ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I am new to Linux (SuSE 10.0), but have used/programmed computers for decades. Now that I've got the basics under my belt I'm ready to build a development environment. I'm quite happy with the things I have collected over the years under Windows, but some have no equivalent - but under Linux there's a better way, isn't there!?
Please would you point out good URLs so that I can make an intelligent choice, and read-up and understand what I'm setting out to do. NB I'm not looking to start religious wars here: I'm interested in what you are doing sure, but please don't just tell what you think is THE BEST (I have my own needs, biases and preferences!) Here's what I think (am open to correction of oversights) I need:
Foundation:
I'm building a LAMP setup - hopefully without having to compile anything (because I haven't done that Linux task yet - have downloaded from SuSE or RPMs everything to date): Apache, MySQL, PHP.
1 version/change control
I thought Subversion. I'll drop in all code, including conf files and the like. I'd also like to use it for OOo docs and thus as a centralised backup target...
2 editor/IDE/project management
I have been looking at Eclipse + PHP bolt-on, but I'm getting turned off by its Java-centric-ness - there is a PHPeclipse which I haven't looked at though. Plenty of other stuff around that may or may not meet the specs, eg Bluefish just being downloaded...
Have also been taking a look at Leo with its ideas of 'combining' code and docs.
I work in PHP and Smarty, also HTML and CSS files, but hey, let's look ahead an include XML. (simple text goes without saying).
'Project management' facility so that I can 'group' files together. Allowance for multi-use/re-use of common Include and Class files would be grand. BTW I use MySQL's own table access and DBadmin tools, or scratch away in terminal mode happily enough.
Future expansion? Maybe Ruby or Python...
Graphics: to produce thumbnails at the required size?
3 Debugging and Testing
I'm not too much into auto-debuggers (before my time!?) tending to build my own skeletons to test classes as I create them and I put in echos without thinking - but I'm open to change.
Would like to know if there are any test frames out there that are used in a serious environment that I should review though.
4 Prototyping
When prototyping with user present it's useful to have a WYSIWYG HTML tool, eg do you want it here? (anti-MS foamers at the mouth look away now) perhaps something like FrontPage. Do such things exist under Linux?
Will be interested in any rapid/extreme tools for code proto/final work, but generators don't turn me on unless they are two way/round trip capable and absorb: allow me to add at the code level!
5 Organisation
(perhaps this gets answered under (1)?)
I normally set up sub-directories (and vhosts) so that I can run different versions of each project. Traditionally dev/code, test, and prod. Is this now considered passe'
(Oh yes, there's another need - I do work in other Euro languages as well, so I need to figure out how to key accents etc...)
Not asking for much, am I? However there doesn't seem to be a discussion of this nature already on the board. Any and all helpful pointers will be appreciated! (partial answers - one or more of the five points above, equally appreciated)
I'm a web developer (day job) and work in Linux. I develop using LAMP. Here's what I'm using and have tried (I'm on Gnome as well, if you're on KDE, try Quanta)...
Zend Studio (not free but an amazing.) This handles most of what I need to do, debugging (I seldom use), HTML/CSS/PHP/JS/SQL text editor with all the typical bells and whistles, DB administration (remote and local MySQL/Postresql databases). Problems are that it's expensive and java based. I'm willing to put up with that though it's so nice. I won it in a contest so the price tag didn't factor in for me.
PHPEdit and Bluefish are popuplar text editors for PHP/HTML/JS/CSS I tried and niether quite felt solid enough, but they are quite popular and development is surely making good progress. Before using Zend Studio, I simply used Gedit.
CSSed is a graphical CSS editor and seems nice enough. I still do my CSS by hand.
NVU is a WYSIWYG HTML editor. I use this for the articles on my website since I can just type them freely and drop them in and let the CSS format them. It's also nice if you have a tedious table to build or to write up documentation for you clients. Works pretty well-- some quirks here and there but what WYSIWYG editor doesn't.
And finally, testing web pages for cross-browser compatibility--One of the great things about Linux, you can install Wine (windows emulator) with MSIE. You can install Firefox, Netscape, Opera, and Konqueror for Linux. Konqueror requires the KDE libraries but allows you to test Safari browsers due to it's similar rendering engines. Then you're able to test on many of the browsers commonly used (IE Mac will still bite ya in the arse).
Many thanks - surely worth more than 2c! Appreciate a reply from a fellow professional.
You are correct, I am working in Gnome (apologies for not stating).
Your 2c highlights my issue with Zend Studio. I expect that I would need the USD300 version (subversion interaction) which is a bit steep - and steep costs are one of the motivations for going through all the turmoil of moving away from M$, is it not!? Sad!
Well done on winning it (((jealousy))). I won a free Internet Domain registration several years ago, and have just been paying out annually/biannually without much thought. I've just realised that I've been paying over the odds since the free time...
PHPEdit and Bluefish: agree with you on former. Will play with the latter for a while. Also NVu (didn't like under Win). I tried Quanta some time ago under Windows. Maybe I should go back for another/updated look... Like you, I used programmers' editors for ages - mind you I had SPF on mf and PCs concurrently which helped cement that bond.
I'll check out CSSed. Thanks.
I didn't mention cross-browser compatibility. Thanks! I have loaded all the major browsers not part of SuSE by default. I've also been playing with the SuSE screen resolution feature, to cover those bases. I won't go to Wine (windows emulator) because the CO needs to keep Win for her work, so I'll borrow her PC for MSIE testing.
I work alone or in 2-man teams and small-medium scale projects--never large projects-- thus I do not need version control. However, I do use phpDocumentor frequently which is another "built in" handy feature of zend studio.
To be completely honest, I don't think there is ANY such environment for web development under Gnome at this time, aside from Zend, which acomplishes all of what we need (want) in one tidy package. I can only assume and hope that phpEdit or Blufish projects continue to mature.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.