As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
What I want to do is, to work on my projects from "everywhere" with internet connection
I tried followings:
Tried to connect from my office to main PC with remote desktop apps like: Team Viewer, etc.. It's very slow and boring. (Seeing what I typed after 2-3 second delay, and it's really annoying)
Carrying laptop with myself also not good idea. (It's weight about 4-5 kg.)
Flash drive also not good idea... All my projects together is about 20-30 GB.
The only comfortable way for me is: web based IDE (something like Netbeans, I mean in-built project management,etc.. BUT web based).
I was looking for Web based IDE which supports PHP, HTML, JS and other various languages. My main PC is always connected to internet. So if there is any good open source (or free) solution, I can serve this IDE either from my webhosting account or directly from my PC. (For ex. this service http://c9.io/ is exactly what I need. But there are some problems: 1 its paid. 2 I don't want to host my projects in third party servers. I need something like that, but want to instal such system on my own servers )
What do you think about this/what's your suggestion? Thx in advance...
You should check out Codiad - http://www.codiad.com - you can host it on your own server, configure it to do what you need, and access it anywhere.
If you want to work on a project from anywhere, then you may want to look at using a decentralised version control system like Git instead. Advantages is you can work on any machine with Git and an IDE or text editor, and not relying on a third-party, web-based service that can do anything with your data or may disappear overnight.
As an alternative way of solving the problem: All my projects are hosted on GitHub. I split my work between three computers. When I sit down to work on a project I run git pull and any changes I’ve made on the others get pulled down. You won’t have to re-sync all 20GB of data, just the bits that you’ve changed. Then you can continue to work using native OS applications.
You can install Git, for free, on your own server.
So you want a free web-based IDE that allows you to set the project folder in your own server? That's doable I guess, but I am not sure whether anyone has done it yet.
There's always vim though. I use it a lot and, while there's somewhat of a learning curve to it, you can use it anywhere there's a console (linux or putty on windows) and I think it has all of the features you've mentioned.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm creating live chat application that should be part of my website. Website is fully developed using PHP. Now the problem is I'm in dilemma what would be the best appropriate tool for live chat application platform that will become part of my website. It should use Users from my website and share Session with PHP application it's part of.
I did some research and as I thought - PHP+Apache is not really the best tool for development of applications based on web sockets like my live chat is. Other platforms like Node.js looks like the right choice but I'm not sure how easy it will be to make Node to share resources with my PHP application.
I'm interested what approach would you use for situations like this? What architecture of the system would you implement?
For the end I want to tell you that my PHP website is MySQL based and I'm using knockoutJS for client-side implementation. It will use SocketIO on client-side because of it fallback strategies and support for non-HTML5 browsers. I know it can be used on server-side too but I'm doubting between it and Node or some other solution currently unknown to me. That's the main reason why I'm asking this question here. There is a small possibility that it will be running on shared hosting but I fully understand problems with shared hosting and socket connection (closed ports, no-SSH for installing Node etc.). If you have suggestions regarding this possibility - write it down. Otherwise just forget about it and answer like it's going to run on VPS.
Thanks.
If you plan on using node.js, there are solutions out there to help integrate node.js into your existing php environment. (e.g. Sharing PHP sessions with node.js) Node doesn't play to well with apache, so you will probably want to look into switching over to Nginx and PHP-fpm.
Personally to get this running "well" that is a good amount of changes for just a simple "chat" application. I would probably look into integrating an already developed solution Comet Chat. Or if I wanted to make it a little more customized I would build out something that uses an existing architecture on a separate platform. Firebase is a pretty awesome service that just came out that looks like it would fit your needs perfectly. If this worked out as a good solutions for your users, I would then work implementing something custom built in Node.JS.
A in-house solution would start with evaluating the needs for your server. How many concurrent connections do you expect? Do you have control over low-level Operating System features. Open socket and open file limits seem to be major contributing limitations to shared hosting plans. So you may need to evaluate different hosting plans. A good PaaS solution for Node & PHP is AppFog. Appfog is free for up to 2gb and 10 instances, which may help you get started. If you want total control I would recomend a dedicated server, or something like amazon AWS.
Then you will need to evaluate your architecture. Like I said, Nginx does a pretty good job how serving both PHP and node.js, but there are many more options that may better serve your needs.
A good place to look and start learning is the source code of Ballons.io. It is a very well written open source chat, and it leverages redis, which is a common solution to session management between PHP and node.js. Best of all you build the source on AppFog, and test out some in-house solutions and code in minutes without any cost to you!
Good Luck!
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I finally decide to give a source control a try with my existed project (since I will be hiring another new developer soon). I am pretty new to this area and I need recommendation which Source Control should I use to fix my current project.
I am developing Web Application which dealing with large number of pictures. Currently, we have over 500,000 pictures (large size picture and several thumbnails). I am using PHP which is not what I concern (since it is just only hundred of script files). My major concern is with the large amount of picture.
NOTE:
I just install VisualSVN. What do you think about SVN. Do you think it will fix to my requirement?
I got two votes to close this question. I did read the FAQ and I believe my question is perfectly fine.
Stack Overflow is for professional and enthusiast programmers, people
who write code because they love it. We feel the best Stack Overflow
questions have a bit of source code in them, but if your question
generally covers …
a specific programming problem
a software algorithm
software tools commonly used by programmers practical,
answerable problems that are unique to the programming profession
… then you’re in the right place to ask your question!
Stay away from legacy version control software such as CVS and SVN.
Use one that you can easily host yourself, so that you don't end up paying way too much for simple storage.
I'd go with Mercurial (hg) which is very easy to set up, you can host it yourself and is very easy to use. An alternative is Git, which is pretty much the same although the commands and internals are different.
Another alternative that's often used in commercial organizations is Perforce. I don't have experience with it myself, but I've heard good things about it and I think it should be able to handle huge amounts of files.
If you are new to source control, I recommend that you go with SVN. I find SVN to be most straight-forward option. VisualSVN is a good choice, works well and it is free of charge. However, I would encourage you to checkout hosted SVN repositories such as beasntalkapp.com.
What is your reasoning for adding all the images to version control? Will they change often?
In my experience, adding alot of binary files to any version control system is bulky, but particularly SVN, since you'll be checking for changes on the server, and a file check for 500.000 files is not fun.
I'd recommend you store your images in a shared folder instead, for example on a samba share or similar, and change the pointers in your code to that folder, so all developers share the same images.
The PHP code on the other hand should definitely go into version control, my recommendation is Git, but Mercurial is a good option. SVN is a legacy system that I wouldn't recommend.
Stay away from old versioning software especially Visual Source Safe!!! My advice would be to go with Git (and you have a free host at bitbucket.org as well as hosting mercurial but i've never used that one). github.com is only free for open source projects, bitbucket is also free for private repos but charges per extra user instead.
I've been using git now for about 4 months and it's brilliant. Sub version i found annoying and only used it briefly (was years ago and can't fully remember why i stopped using it - something to do with directory and file handling i think).
Git seems to be the latest one to get a good foothold and after using it it really is VERY flexible as well. I quite enjoy the rule that once you commit something to the repository - it's hard to accidentally remove it! Branching is also very fast compaired to alternatives and because it works by linking to the previous unchanged version instead of saving diffs and having to reapply them all it's quite small filesize wise and is VERY fast compaired to others. I also store about 3000 icons in it, 300 lines of code and about 500 php files + js libs, etc all in a single project and to be honest it's just as fast as when i first started with a few files!
You won't go wrong with Git - and use either github or bitbucket in the start as it's much easier to get started that way. You can always setup a repo yourself at a later date.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm writing a simple WMI-based monitor application that sends monitoring data over a TCP Network socket to an Android app. I have no issue writing the Android App with Titanium Mobile (JavaScript) so that it creates a socket and accepts the data. However I'm looking for the best (easiest and fastest) way to get the WMI data and send it over the TCP socket but with a VERY basic Windows GUI. The only reason for the GUI at all is so the user knows the software is running, and possibly they will enter IP here to connect to the android over wifi. Here's my situation so far:
PHP and JavaScript are my strongest languages (being a web dev). I can write WMI/COM scripts with PHP and compile with Bamcompile to a Windows command line EXE. It only supports PHP4 and I'm not sure which GUI toolkit (if any) will work with it as it is so old, but I still prefer it for my basic Windows stuff.
I've been playing around with Perl (Strawberry Perl) and realising its potential. But seeing as my main programming PC is on a proxy I'm having trouble getting Tk installed, so again I'm without the GUI stuff. I've tried "ppm install Tk" and "cpan Tk" and have put in all my proxy details, it's even downloading lots of data/modules but I'm getting errors that I have no idea how to solve as I'm not yet a Perl person.
I have tried WinBinder for PHP and double clicking the Windows .phpw files seems to work, but I'd have to package the whole thing up somehow and also the command prompt window in the background looks messy.
I could use AutoIT 3 - it does GUI, sockets, all that sort of stuff, and compiles to EXE, but I would really prefer PHP or Perl for the learning experience and I'm just more used to their syntax.
Python looks great but a bit different to PHP or Perl so I'm not going to spend the time to learn it just at the moment. Will probably switch to it down the line though as it seems to have a very interesting structure.
I suppose the main issue I'm facing is that I could write this app for PHP and just Bamcompile it but I need to get the users input and let them know that something is running. I also presume using something like Wapache to just show a web browser with no toolbar wouldn't work because the PHP has to run in a continuous loop and that would crash any "browser"? Will this work?
set_time_limit( 0 ); // 0 means never timeout
ignore_user_abort(true); // continue running when browser closes
So any ideas? Jscript and JSC ?
Bear in mind that I don't want to learn any Microsoft .Net stuff or complex C languages, or Java.
I'm sure I can do something like this with my current skills in PHP / JavaScript? No?
I too had problems installing the Tk module for my Strawberry Perl, but found that it installs manually just fine. Take a look at
perldoc permodinstall
to understand the process.
Perhaps the simplest way - if your CPAN is downloading packages correctly - is to run the cpan shell and say
cpan> look Tk
which will download and unpack the module for you and then shell out to a command prompt with the unpack directory as your current location. Here you can go ahead and say
perl MAKEFILE.pl
dmake
dmake test
dmake install
as described in perlmodinstall. (dmake is the flavour of make used by Strawberry Perl.)
My personal preference for a GUI library is the wxWindows API Wx which is designed from the ground up to be portable and has a look and feel that depends on the platform where it is running. But you are likely to get more help using Tk, so the choice is yours.
Most languages you've given there are going to use cross platform GUI libraries, and that is unnecessary hassle when you've said you want a Windows GUI. You will just end up making more work for yourself.
Everyone is going to want to sell you their language here. They wouldn't use it if they didn't think it was the best. So I guess I might as well jump in (disclaimer: written by an AutoIt MVP):
AutoIt will allow you to make small windows applications very quickly out of the box, it's one of the things it really does excel at. It's also entirely native, which in most cases means it's a lot easier to work with provided you don't intend to move over to linux any time soon.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I have been having this debate with my boss for a long time, now I am having doubts about myself.
We work in a small team, with basically just me as a web developer and another assisting me when I need to do grunt work :P
My boss is trying to make me work on code that is directly on a test server, so he can check up on my progress...
I am insisting on working locally then uploading it when it's more stable, kinda like patches, because I don't want testers (my boss or sometimes even clients themselves) to see errors that are bound to happen while i am coding... and I save very frequently so working remotely means slower saves <_< which I find annoying.
So any opinions guys?
Its best to code on a development server (bascially local) and once you are finished with your code and tested it push it to the live/test server.
It's a very bad habit to develop directly on the live/test server as you are bound to get conflicts with other developers.
As you are working with another person you should also implement a revision control system. (Well basically even if you're developing solo you should. I also got one for my private projects as ist just makes it easier to revert mistakes.)
If you got a revision control system you can agree with all developers to only chek in changes that has sucessfully been tested locally and then create a commit hook that will update all commits to the testserver automatically.
So every time the revision is updated the test server follows while between commits the testserver stays stable.
If its a private test site, it all comes down to what the client wants. I've worked both situations, and the latter does upset me more but sometimes that is what the client wants.
The (Client) want to double check every hour and then complain when something isn't even finished. Its not fun, I would ask him if you can move towards a local development, and push patches nightly or something.
Though the advantage of developing on a test server is you can notice problems that you might not notice until production. It has its up and downs. I usually develop locally and try and push my changes to an identical setup test server to check for any strange errors once a week.
You need to work localy and periodically commit Your code to web-server. Some type of CVS must be installed on the server.
That so You can crash anything localy :), fast upload results to server and have 'undo' option in 1 click if something will not work on web-server correctly
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm hoping that someone will be able to recommend a good hosting company that provides the following environment. I know that I could just google for one, but I'm asking here first because I'm looking for someone that has previous experience working with such a company.
Linux Box.
Apache 2.0.
PHP5 (5.2.6 to be exact).
PostGreSQL (8.3.1).
Great tech support who know what they are doing.
A little background information for why I'm searching for a new host. I'm doing some freelance PHP work for a client that currently has his site hosted by, first name starts with H and last name starts with V (for anonymity). I'm sure they are a great company, but last night I was able to get my first glimpse at their web portal and frankly, it looked like it was developed in 90s and it terrified me.
I'm looking for a modern hosting company (my personal site is hosted by godaddy, and all the negative that they may get, their hosting control center is great IMO).
I have already spoken with my client, and they are open to switching hosting companies, so there is no problem there. I'm doing all my work on a local machine I have setup, so I want to be able to work with the tech support to get an identical server setup. Simple things like getting the correct php extensions enabled and ini file changes. There is also a part of the site that has its access controlled by http authentication, so I would also need to work with the techs to get that correctly set up. Access to folders outside of the web root is also definitely a plus (for example, godaddy does not allow this via ftp to my knowledge).
The programmer that was previously working on this site talked a bit with the techs at the current hosting company, and got the impression that they could not even correctly set up the pg_hba.conf file.
I'm also looking for a company that either already provides pgPhpAdmin installed, or can properly edit the pg_hba.conf file so that I may install it myself. The differences between the database for the old site and the new site that I will have finished are pretty substantial, so having such a tool would be a huge help to me when it comes to getting the site online and confirming that the database is setup correctly.
Anyways, sorry for the long winded post, and thank you for any replies!
Servergrove
Go for a VPS hosting. I have only positive experiences so far, you can do almost everything yourself over SSH. They are extremely helpful and uncomplicated. Plus they have an eco-conscious approach which I like very much.
try webfaction. They offer you a preinstalled environment (apache, php, postgres) and you can (if you want) configure everything yourself. Postgres Version is 8.3.1, the other version you can check yourself. Webfaction has a very good support, so I would recommend having a look.
The concept is a little different from a vps: If you take their software your get regular updates. Only if you install your own Software (like PHP)(which is possible because of a complete preinstalled build-essential) you have to maintain it yourself.
Hawkhost
Godaddy.com is another option.