Все-таки, интернет меняется достаточно быстро. В данный момент на просторах интернета очень популярны всякие социальные сети (одноклассники, вконтакте, мой мир, мир тесен и прочая лабуда). До Азербайджана же волна таких популярных проектов докатывается очень и очень долго (как пример - у нас всего один сервак по линейке, один сервак по cs, одна онлайн браузерная игра (на движке БК)). Вообще своего у нас очень мало. Нет своей CMS'ки. Нет своих проектов. Ни форума, ни гостевой. Ничего нет Решил исправить этот пробел и написать социальную сеть. За пример беру ВКонтакт. Теперь хочется поговорить о трудностях, которые меня могут подстерегать 1) Кроссбраузерность. Правда, большинство пользователей Азнета (~85%) используют IE 6.0. Но все равно нужно обеспечить как минимум 4 браузера - Safari, IE6+, FF2+, Opera9+. 2) Юзерабилити. В век веб 2.0 и в гонке за гламуром, пользователи полюбили всякие облака тегов, ajax-голосовалка/формы и т.д. Т.е стандартным РНР тут не обойдесь - надо копать в сторону AJAX и jQuery 3) Т.к в Азербайджане не мало людей разговаривают на русском нужно учесть и этот факт - сайт должен быть минимум на 2-ух языках. Значит нужно делать парсер языковой 4) Дизайн. Ну тут можно особо не заморачиваться 5) Сервер. Сколько реально может потребоваться серверов на первое время? На первое время планирую пока размещать на рабочем серваке, т.к нагрузка пока небольшая. При увелечении нагрузки - взять 2 сервера. nginx (для MySQL) и FreeBSD для Apache/PHP. 6) Домены. Хочется взять 3-4 домена (одинаковые названия, но в разных доменных донах (.az - 50$, .ru - 20$, .su - 100+$, .com - 15$) Теперь по порядку. Все что идет дальше - это примерный вид того, как я вижу. Просьба поправить, если что вам кажется не так Структура БД users - id, email, password, status, last_login, admin_level, registered, active users_info - user_id, school_class, school, school_start, school_end, university_fak, university, university_start, university_end, occupation, work_place, date_of_birth и прочее прочее прочее users_forum - аналог "Стены" ВКонтакта users_photoalbum - id, name, comments users_photos - id, album_id, name, body users_notes - а ля блог, но простенький users_messages - таблица ЛС Модули Авторизация - email + password + captcha Регистрация - email + password + captcha Поиск - по всем возможным параметрам (пол, имя/фамилия, г.р, универ, факультет, школа и т.д) Просмотр инфы - просмотр инфы чела Мини-форум - аналог стенки Фотоальбом - создание альбов и добавление туда фотографий Личные сообщения - отправка и получение Админ центр - статистика и модерация Ну и дальше уже по нарастающей. Затраты 1. Домен - $50 2. В недалеком будущем - 2 сервера 3. Личное время Цель 1. Самореализация 2. Доход Доход Тут 3 варианта. 1) Рекламные блоки 2) Добровольные пожертвования 3) Платные услуги (golden-аккаунты и прочее) Я хочу объеденить 2 и 3 вариант. Короче. Хочется ваших предложений по сабжу. Мысли, идеи. Структуру БД, модули. Как лучше организовать мультиязычность? При помощи парсинга html (он по сути не большой) {LANGUAGE_USER_HELLO} - str_replace("{LANGUAGE_USER_HELLO", данные из языкового файла, $TEMPLATE); Кодировка ессно UTF8 =)
Elkaz Как человек, писавший социальную сеть, скажу сразу - о движках стандартных забудь. Писать надо будет свою систему модульную, которая будет удобна тебе. Скажу что без опыта испоьзования и написания таких систем будет туговато. Что нужно сразу: * Модульность. * Разделение на шаблоны и данные. * Никаких Smarty и прочих подобных вещей. Железки нужны не малые - для ~20-30 тысячь пользователей при 500-600 online потребуется отдельный сервер для базы данных с нехилым кол-вом оперативной памяти и быстрым апаратным RAID (не тот что встроен обычно в материнские платы, аля Intel ICH), WEB сервер ну и storage сервер + свич. Если уверен у успехе, то это минимум. Полазь по boomtime (у меня в подписи) - там довольно много доступно без регистрации.
Psih Так и собираюсь. Писать свою модульную систему. Smatry не юзаю вообще. Опыта использования и написания нет - как-то не приходилось сталкиваться с такой задачей. Хочу попробовать. В успехи не уверен - просто это станет основным занятием на пару месяцев. Теперь вопрос такого плана - как лучше всего хранить медиа-файла? И воспроизводить собственно. Можно где-то достать плеер gplшный (а ля YouTube)? Что скажешь по поводу окупаемости? Насколько сеть себя окупит? Через какое время? На чем строить лучше доходы? Баннеры и халява для юзверей - или вводить платные сервисы за $5 в месяц, к примеру. Просто если второе, это нужно сразу описывать в логике. Да, по поводу железок знаю. Сейчас пишу онлайн игру. Муторное дело... Так что про все прелести знаю =)
раз на дизайн плевать... чур я буду дизайнером опыта нет, картинки рисовать не умею. поэтому могу сделать только аскетичный дизайн в духе мэйлру, яндекса и тп верстать не буду, но могу посоветовать xslt в качестве шаблонизатора. причём с разделением шаблонизации на два этапа: логическая шаблонизация (составление модели страницы на пхп) и визуальная (наложение на модель хтмл или иных шаблонов) облака пользователям не нужны. эта фича - модная среди разработчиков а не посетителей. выглядят они ужасно, кликают всё-равно по трём самым крупным словам. на стене полезно выводить и сообщения из блога - так что не стоит разносить эти сущности слишком далеко по таблицам.
Медиа сервер лучше всего отддельный и заточенный под хранение данных. Если ресурс станет популярен, рано или поздно придётся делать кластер. Незнаю каковы реалии у вас, у нас здесь народ уже привык платить за всё по SMS. Тут сказать ничё не могу. Прокатит думаю оба варианта, впрочем мы щас больше ко второму варианту пришли.
Elkaz http://emi.az/home.php. Тебя на месяц опередили. Так что бегом делай конкурента. А это смешно. Вспомни про то, что людей надо сортировать по школам, интересам и прочему, организовывать ощение между нимим. Представь все эти связи.
Переписка, оценки фотографий, гости - это три самых тяжких момента. Ну ещё сеть друзей выбрать тоже не из лёгких задачь - надо очень хорошо продумать базу и очень очень очень правильно написать этот запрос.