Answer the question
In order to leave comments, you need to log in
Language, technology and tools for developing an Ajax-enabled blog?
Hello!
Question: what is the best toolkit (interested in everything from the language to the IDE) to use to develop a self-updating blog a la tumblr.com or twitter?
Brief background:
I came up with the idea of a blog with a unique post format (I don't want to reveal, because this is the highlight).
Everything else in the blog I want to keep simple. I am guided in this on tumblr.com
The question arose: what to write on? I have no special experience in web development, but I myself am an IT specialist by education. Those. I can master any technology and any toolkit, and I would choose the most suitable one.
At first I thought to write the first version in pure PHP+MySQL+Ajax. Then I read on Habré that for effective development you need to be friends with some kind of framework, I thought it was friends with CakePHP. And today I read here that for the correct implementation of frequent website updates, you need not just Ajax, but the “Push” technology with “comets”. I looked about Push , I looked about comets , I didn’t find PHP in the table about comets and got upset. I decided to read what Twitter is based on, it turned out to be Ruby On Rails. And I ended up confused.
Help me choose a toolkit.
1) We need tools for the first version in order to develop it as quickly as possible, and so that it can withstand 10 thousand people a day.
2) Toolkit "for growth" to develop a more reliable and faster version, while the first working version will gain these same 10 thousand users.
If there are technical or semantic mistakes in my question, please do not call me names, but correct and clarify.
Thanks in advance.
Answer the question
In order to leave comments, you need to log in
Let me be stoned for bad advice, but write in PHP =)
The main reason is the low entry threshold (especially if you are familiar with C-like languages) and the sea of documentation.
Bad advice number 2 - at the first stage, you don’t even have to waste time learning the framework. If there is no experience in web development, it will be just a theory. IMHO, the need to use the framework needs to be recognized, and this requires practice and a lot of mistakes :)
Your goal is to implement the first version. And a lot can change along the way. Languages and technologies are not so important, no language, IDE or framework will help you do everything right and perfect right away. Therefore, choose from considerations "what will interfere less in the development process."
There is Realplexor for PHP , so I'd keep digging into PHP. If you do not start to be aesthetic about the wretched curvature of all this PHP, other platforms, by and large, have no advantages.
Find partners who can take your idea and write, and you only manage the idea and management.
PHP:
[<?
$fi = 'path/push-flag-file';
$fileMod = filemtime($fi);
$startTime = time();
do {
usleep(500000); // 0.5sec
clearstatcache();
} while (($dileMod==filemtime($fi)) && (time()-$dtartTime<1800)); // or 30 min timeout
readfile($fi);
?>]
JavaScript:
function ServerPush() {
$.ajax({
type: "GET",
url: "/path/push.php",
async: true,
dataType: "json",
cache: false,
timeout: 1800000, // 30min 60000 = 1 min
success: function(data) {
// do what you want with data here
if (PushTimeout) clearTimeout(PushTimeout);
PushTimeout = setTimeout(ServerPush, 500);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
if (PushTimeout) clearTimeout(PushTimeout);
PushTimeout = setTimeout(ServerPush, 1000); // 1sec
},
});
}
Try either Ruby on Rails or node.js. The entry threshold in javascript is also not very high (although higher than in PHP)
javascript. You can do everything on it - from the client side to the server and database :)
You can use ASP.NET MVC + jQuery
From the Web Platform Installer, you can immediately download templates and examples of blog engines. Understand what works and how.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question