Alternatives to Dreamweaver



  • So, my home PC got a scrubbing over the long weekend, and I'm debating whether or not to re-install Dreamweaver CS 5.5.

    Not that I really do that much webDev at home at the moment (at least until/unless WTForum actually takes off...), but I'm also using Dreamweaver CS 6 at work where I do get to work with maintaining an HTML5/PHP/KnockOutJS SPA, so I'm kind of wondering... should I try to convince my PHB to get on the Dreamweaver Cloud train, or should I migrate toward a different IDE?

    Code completion and search/replace are obviously the two biggest features to me. Having some sort of automatic tie-in to a repository would be nice, but at the moment my repo at work is merely a purely local instance of TortoiseHg, so that's not a pressing issue for me right now. Cost matters, since I'll have to get purchase approved, but I'm willing to argue/fight for a paid program if it's actually better (in the pain/time saved category) than ye-olde-free option.


  • Grade A Premium Asshole

    People still use Dreamweaver? I didn't even know that was still a thing. I thought it was just an Adobe also-ran.

    Give Sublime Text a try. Or even Notepad++. For HTML I see no reason for a full blown IDE. Too heavy and slow. I have always preferred a lightweight text editor and I can take care of the rest through command line, etc.



  • Why would anyone still use Dreamweaver? It was conceived during the upswing of Frontpage/WebForms "we'll abstract away the html" kind of mentality. I remember it generating slightly cleaner html than Frontpage and having some kind of javascript widgets you could quick-generate. But that was in like 2000-2004 era. They must have moved away from that, although I haven't heard any serious web dev still using it today.

    I would look into WebStorm. It has everything you mention and it's pretty affordable too.


  • FoxDev

    well then.

    I'm extremely partial to ViM as an IDE. I't a pain in the ass to set up the first time, and has a very steep learning curve, but once you get near the top of it and sort out your plugins it's an amazing IDE

    if you want something easier to learn there's:

    Cloud 9 IDE: a cloud baased IDE that does HTML5/JS/PHP pretty awesome. It's cloud based so you can access it from any comoputer, it has some neat colaborative features. Integrates with Github (i think mercurial is in the works)

    Downsides are: unless you pay for the subscription you only get 1 private repo. Unlimited public ones tho(or if there is a limit i haven't found it yet.)

    Sublime Text 3 nice little IDE, pretty lightweight tons of expansion possibilities. It does annoy the crap out of me for its choice of keyboard shortcuts (distinctly Mac-esque, and i've been PC/Linux all my life) but that's a small annoyance. Free/nagware or paid license (1 time fee)


  • Grade A Premium Asshole

    @cartman82 said:

    I would look into WebStorm. It has everything you mention and it's pretty affordable too.

    From the same group that makes Rubymine. If it is as good as Rubymine, it should be good and I would give it a try.



  • I guess my two biggest reasons for DW are

    1. change is hard -- I landed on DW back in 2000 or so and just never tried anything else because it worked fairly well for me in "coder" view
    2. the integrated ftp et al that lets me push to the web server with a three key hot key and no separate program.


  • @izzion said:

    integrated ftp

    You're still using FTP? Install git in your server damn it.



  • If you want a HTML editor with live preview, Visual Studio does that and is 40,000 times better than Dreamweaver (even back when Dreamweaver was good. Which was like a decade ago.)

    Text editors for HTML do suck, I agree, but there are better WYSIWYG editors out there.


  • I survived the hour long Uno hand

    @izzion said:

    Code completion and search/replac

    Have you ever tried Eclipse? People bitch about it, but I've heard as many people that will swear by it than hate it, so it's worth trying at least once to see which camp you're in.



  • Well, these days im more using the et al, since the web server at work is IIS and I use a windows network file share to connect to the web server. It was just easier to type without listing the six or seven ways dreamweaver connects to web servers for file transfer.



  • It sounds like you love Dreamweaver and want to have sex with it and never ever stop using it, so why does this thread exist?



  • Oooooooorrrrr... as replies came in and as I drove to lunch and sat there eating BBQ wing goodness, it occurred to me that I had underspecified what features I really used in my OP, and decided to add on replies as the thoughts came to me?

    And then had to clarify the one since, as a result of my laziness the difficulty of replying on mobile, I made it look like I'm stuck in the early 1990s with what technology I use to update files on my servers.

    Nah, you're right... Dreamweaver have my lovechild!!!!!!!111eleven



  • @izzion said:

    Nah, you're right.

    Natch.



  • @cartman82 said:

    They must have moved away from that, although I haven't heard any serious web dev still using it today.

    You should come meet the "web dev" for several of our hosting customers. They still gripe at every opportunity over the fact that we no longer support FrontPage Extensions (as of nearly 2 years ago). And they're still using FrontPage to actively develop web sites for our mutual customers.



  • @cartman82 said:

    I would look into WebStorm. It has everything you mention and it's pretty affordable too.

    Judging from their site, the WebStorm option is for HTML/JS type stuff only, whereas PhpStorm is the same thing plus some PHP tools as well? Or would I theoretically need two separate IDEs for the two sides of my project (HTML/JS front end and PHP API backend)? Or to re-do the API so it isn't using PHP, I suppose, but not sure I can get the PHBs to sign off on that much time... 😆



  • @izzion said:

    Judging from their site, the WebStorm option is for HTML/JS type stuff only, whereas PhpStorm is the same thing plus some PHP tools as well? Or would I theoretically need two separate IDEs for the two sides of my project (HTML/JS front end and PHP API backend)? Or to re-do the API so it isn't using PHP, I suppose, but not sure I can get the PHBs to sign off on that much time...

    PhpStorm: html/js/css + PHP
    WebStorm: html/js/css + Node.js and a bunch of js frameworks.

    Chose your poison.



  • So if I want, say, HTML/JS/CSS + PHP + Knockout.JS + jQuery, I get to go perform an anatomically impossible act? (and/or use two separate IDEs?)

    Eeeeeeeew. <insert open source joke here>

    Oh, and yippee. PhpStorm (and thus presumably WebStorm?) doesn't support UNC paths. That'll make my development life more fun :'(


  • FoxDev

    @izzion said:

    That'll make my development life more fun

    map a network drive?



  • Ok, so as I'm thinking about this more and investigating the various suggestions here (no, I'm not wasting time at the office on a Black Friday, why do you ask?), I'm wondering if maybe I need to zoom out a bit and take a more holistic look at my development process...

    At the moment, my Dreamweaver is basically set up with six "sites" -- Dev, QA, and Production for both the Frontend (HTML/JS/CSS using Knockout.JS and jQueryUI) and the API backend (PHP) of my application. DW uses UNC path network drives to upload to the various sites.

    My (local workstation) file system is set up with TortoiseHg and Dreamweaver is looking in a Mercurial repo folder for the local files. So basically the Dev repo is "master" and then there is a QA and Production clone on my hard drive for files to push up. If I want to push something to QA, I use TortoiseHg workbench to pull files from Dev, then switch sites in DW and do a sync to update the QA server. Similar for deploying to production (after thorough testing, of course!)

    So, I guess I'm open for suggestions on tool and/or process improvements to make my life better, before the App2.0 project officially lands on my desk and I get time pressure involved in this. And if I can kill a few hours out of my Friday, so much the better.

    And I will say that DW CS 6's code auto-complete is so-so for PHP and gets downright awful for JS when you start using a require.js type setup so that you don't have one mega 5000+ LOC JS file for your SPA. So, I'm certainly ready to cut the cord with DW, which is basically what started this whole thread anyway... I just don't know what I really do want instead, if that makes any sense...

    Thanks in advance for the trolling, suggestions, rants, et al.


  • I survived the hour long Uno hand

    @izzion said:

    So if I want, say, HTML/JS/CSS + PHP + Knockout.JS + jQuery

    These days the usual thing to do is to hire two people, one front-end dev to do the Knockout.JS + jQuery, and one backend dev to do the PHP



  • Mapping a network drive is all well and good, I'm just not a huge fan of having a bunch of extra drive letters running around and trying to sync them between my desktop and my terminal server session (or having to otherwise re-do my site configuration files).

    Plus, this is TDWTF, aren't I allowed to bitch about random things at any given time, like how $linuxyProject doesn't support UNC in the 21st century? The U is for Uniform, after all, why can't the *nix heads just toe the line! :p


  • Winner of the 2016 Presidential Election

    @cartman82 said:

    PhpStorm: html/js/css + PHP
    WebStorm: html/js/css + Node.js and a bunch of js frameworks.

    Nope, PHPStorm = WebStorm + PHP.

    @izzion said:

    So if I want, say, HTML/JS/CSS + PHP + Knockout.JS + jQuery, I get to go perform an anatomically impossible act? (and/or use two separate IDEs?)

    Nope, see above.



  • @asdf said:

    Nope, PHPStorm = WebStorm + PHP.

    You're right. I didn't know PHPStorm had node.js stuff.


  • Winner of the 2016 Presidential Election

    @izzion said:

    And I will say that DW CS 6's code auto-complete is so-so for PHP and gets downright awful for JS

    In that case, PHPStorm will pleasantly surprise you. (Don't forget to install the "PHP Advanced AutoComplete" plugin.)



  • @asdf said:

    Don't forget to install the "PHP Advanced AutoComplete" plugin

    As in this plugin? https://plugins.jetbrains.com/plugin/7276?pr=phpStorm

    And on first pass through getting PHPStorm set up for my application, it looks like either my coding style is seriously "bad", or there's some sort of setting I need to tweak to get PHPStorm to recurse through my include pattern correctly...

    General setup is that IIS is URL Rewriting incoming API requests (which are in a REST-ful format) to hit $baseURL/api.php?requeststring. I'm then PHP-including a REST utils library I stole adapted from someone's blog, and having it parse the request string to determine which API handler needs to deal with it. I then have a "God switch" that does this general pattern...

    switch ( $restRequest->getLastObject() ) {
        case "customers":
            require_once("includes/apicustomer.php");
            RestUtils::sendResponse(200,apiCustomer::processRequest($restRequest),$restRequest->getHttpAccept());
            break;
         \*snip\*
    }
    

    At which point the code inspector winds up complaining about the various $restRequest methods not existing when it does an "Inspect Code..." on the whole project. It also bitches about relying on void function results for most of my functions, but I suspect that's mostly because I coded to PHP's "what types?" methodology and the code inspector is implicitly assuming void functions (what type would you even use for "returns a json object" anyway? string?)


  • Winner of the 2016 Presidential Election

    @izzion said:

    As in this plugin? https://plugins.jetbrains.com/plugin/7276?pr=phpStorm

    Yes, that plugin.

    @izzion said:

    it looks like either my coding style is seriously "bad"

    @izzion said:
    I then have a "God switch" that does this general pattern

    😄 *

    Anyway, if you know what you're doingâ„¢, there are a few ways you can help PHPStorm parse your code:

    • Use /** @var $var MyType */ comments to specify the types of variables where PHPStorm can't deduce them
    • Use PHPDoc comments to specify the return type of functions (PHPStorm understands complicated return types like void|bool|MyObject)

    *BTW: You should definitely use an autoloader instead of manually including PHP files in switch statements.



  • @asdf said:

    *BTW: You should definitely use an autoloader instead of manually including PHP files in switch statements.

    This is what happens when I learned PHP for a hobby project in high school, during the PHP 4 days (1999-2000), went to school for Business Finance, and then got a job via nepotism doing computer repair and got promoted to sysadmin/computer programmer/JOAT. Peter Principle at its finest ><


  • Winner of the 2016 Presidential Election

    @izzion said:

    This is what happens when I learned PHP for a hobby project in high school, during the PHP 4 days (1999-2000), went to school for Business Finance, and then got a job via nepotism doing computer repair and got promoted to sysadmin/computer programmer/JOAT. Peter Principle at its finest ><

    In that case, you should definitely read some blog posts/books/…, PHP has become a lot better since then. (Glad I started to learn PHP after PHP5 was released.) If you use modern frameworks, tools like composer and a decent IDE like PHPStorm, PHP programming can actually be fun.


  • Discourse touched me in a no-no place

    @blakeyrat said:

    why does this thread exist?

    To infuriate you, of course.



  • @izzion said:

    during the PHP 4 days (1999-2000)

    Exactly the same time I ran away from it. It was better than Access97 though.



  • Thanks much to the peoples who suggested PHPStorm and gave me some initial pointers. I'm about to shoot the messenger (PHPStorm) for the thousands of warnings about my crappy documentation-optional coding style, but it does look like it's going to be a net-boon for my workflow once this technical debt is paid.

    grumble



  • This post is deleted!

  • Winner of the 2016 Presidential Election

    That website made my eyes bleed



  • I can't even access it.



  • Oh Jesus, WTF. No kidding. It's like physically painful. Either those guys still have 1024x768 monitors, or they all have Superman-vision.


  • Discourse touched me in a no-no place

    It's almost like tiny text sucks.



  • @izzion If you are interested http://www.phptherightway.com/



  • Dreamweaver has a lot of pro's, if you only use the code view.

    Built in version control (svn) FTP/SFTP, local/dev servers, HTML auto-close on </, tree view, etc.

    I've yet to find another editor that does all that. Atom is the best alternative right now.



  • @lucas said:

    If you are interested http://www.phptherightway.com/

    Scrolled through quickly: first thing I disagreed with was promoting twig / any other templating language. I still don't understand why people think they need a template engine on top of php. Inner platform ftw. But whatever, people like this stuff because {{ bracesarecool }}.



  • @evandentremont said:

    Built in version control (svn) FTP/SFTP, local/dev servers, HTML auto-close on </, tree view, etc.

    All IDE's and most text editors have all that and more. But I guess if you're working in code view, dreamweaver is pretty much like a slightly bloated version of any other IDE, so... meh.

    @monkeyArms said:

    Scrolled through quickly: first thing I disagreed with was promoting twig / any other templating language. I still don't understand why people think they need a template engine on top of php. Inner platform ftw. But whatever, people like this stuff because {{ bracesarecool }}.

    It neatly splits the work between backend and frontend. Backend guys can do all the work in PHP and just spit out a simple data model as backing for templates. Frontend guys can then take over and play around with twigs, without the danger of clutzing their way into one of the many PHP's gotchas. Also, there's less whining about "being forced to do the backend".



  • @cartman82 said:

    It neatly splits the work between backend and frontend. Backend guys can do all the work in PHP and just spit out a simple data model as backing for templates. Frontend guys can then take over and play around with twigs, without the danger of clutzing their way into one of the many PHP's gotchas. Also, there's less whining about "being forced to do the backend".

    Thanks, couldn't have said it better myself.

    I've tried making my own (in the past) "simple" view engines with includes and the like and what you end up with is the first 20% of what most of TWIG etc. offer out of the box.



  • I'm suspicious of anybody who doesn't realize PHP IS A TEMPLATING LANGUAGE, IDIOT!

    Ahem. Yes.



  • @cartman82 said:

    It neatly splits the work between backend and frontend. Backend guys can do all the work in PHP and just spit out a simple data model as backing for templates. Frontend guys can then take over and play around with twigs, without the danger of clutzing their way into one of the many PHP's gotchas. Also, there's less whining about "being forced to do the backend".

    So without Twig, smarty, etc you wouldn't be passing only the variables needed to the view? Using simple php code in the view layer is "backend programming"? Twig etc doesn't allow a 'front end' guy to make a bunch of xss vulnerabilities?

    I just dont see the point in giving front-end people a "training wheels" language that adds overhead and forces learning yet another syntax.


  • Winner of the 2016 Presidential Election

    @monkeyArms said:

    I just dont see the point in giving front-end people a "training wheels" language that adds overhead and forces learning yet another syntax.

    You've obviously never had to work with front-end "developers" who add SQL queries to "template" files.


    Filed under: I need a drink


  • @blakeyrat said:

    I'm suspicious of anybody who doesn't realize PHP IS A TEMPLATING LANGUAGE, IDIOT!

    Ahem. Yes.

    It still functions well as a templating language. I mainly use it for backend OOP. You can write some pretty respectable things with it, and also some horrible atrocities (cough Wordpress cough).



  • @asdf said:

    You've obviously never had to work with front-end "developers" who add SQL queries to "template" files.

    You can do terrible things in the view layer using any language (that I'm aware of).


  • Winner of the 2016 Presidential Election

    @monkeyArms said:

    You can do terrible things in the view layer using any language (that I'm aware of).

    At least you cannot call arbitrary PHP functions in Twig templates.



  • @asdf said:

    At least you cannot call arbitrary PHP functions in Twig templates.

    You can call a lot of them (because twig is "feature rich"), and you can do things like {{ htmlWithXssCode | raw }}. My point is you can screw up pretty much anything if you have the wrong person working the gears.


  • Winner of the 2016 Presidential Election

    People can always shoot themselves in the foot if they want to. But you can either choose a template language that encourages them to do so or choose a language which makes it harder.



  • How does php encourage that behavior more so than any other language?


Log in to reply