Emre Sokullu Blogs Emre Sokullu syndicated data http://www.emresokullu.com Mon, 06 Sep 2010 23:11:57 +0100 GROU.PS FeedCreator Thoughts on Ning Exodus and GROU.PS, SocialGo, Spruz, Grouply & others http://www.emresokullu.com/blogs/item/thoughts-on-ning-exodus-and-groups-socialgo--grouply-amp-others GROU.PS, GrouplySpruzSocialGoWebs and BuddyPress. As the founder and CEO of GROU.PS and an avid community manager myself (http://www.eylem20.org http://www.barcampistanbul.com http://www.socialbeans.org and of course; http://grou.ps/groudotps) I'll do something pretty unusual and join this conversation directly. Here I'll share with you what I think of and know about each of those do-it-yourself social networking players that are being widely mentioned. 

Disclosure: You may think I am biased and you'd probably be right... But my only purpose here is to be sincere about the market conditions, give you some insight aside from technical speculation which you can probably find anywhere, and let you know where my company stands exactly. Yet I still recommend that you to look at more independent sources as well. 

BuddyPress
BuddyPress is a fairly new project but it was created by the same good folks who created the most popular blogging platform, Wordpress. It is a software solution, so unlike hosted/cloud solutions, it requires you to have your own servers and run it from there, continually update and be careful about the conflicts that might occur with your patches and plugins. Which means it's for advanced users and it costs you money. If you are strictly looking for a hosted solution though, I'd recommend that you go with them. The other players are Elgg (which has also recently launched its own hosted solution) and Pligg (which I heard just a few days ago). I know some of the folks behind BuddyPress (at Automattic); they are very nice people and they have funding that makes the software a safe bet for the long-term viability of your community. They are much more experienced in online publishing than any of us, too, but the software is not as mature as that of more established players like Elgg and Pligg.

 

At GROU.PS, we are strong believers in the cloud (i.e. hosted solutions). Running stuff on your own servers costs not only money but time and effort. There's a longer learning curve as well. I'm an open-source addict, and I love how customizable BuddyPress and similar players can be because of their open-source nature. Actually, that's why GROU.PS started its own open-source initiative two years ago. But at the end of the day, we evaluated our resources and decided to stick with one thing—but do it so perfectly that we would deliver the best of both worlds. At GROU.PS, we have the vision to create an eco-system similar to -- or even broader than -- SalesForce's AppForce platform. Our Developer and Template Design platforms are early examples of that. Expect to see tighter integration and more opportunities to make money from your knowledge on the GROU.PS platform soon. Such an extensible cloud-based solution not only is much more practical but would solve many of the incompatibility and crash hassles that occur in the open-source world.

Spruz
[update: Spruz has brought new limits to its service, only 100 members allowed in the free package]
Spruz has done some pretty impressive stuff. It managed to sneak into the Ning network with a toolbar add-on called skysa and then created its own alternative platform, which today is called Spruz (and looks like a quick and dirty hack), using the knowledge and expertise it gained from skysa to steal networks from Ning. This strategy gave it a huge boost over others in the importing process. Independent stats confirm that, too: Alexa shows stunning growth, and Compete and Quantcast indicate that GROU.PS and Spruz are the fastest-growing networks since Ning’s big announcement. This growth of Spruz is fascinating, considering that GROU.PS had already been Ning’s biggest competitor for a long while; showing the same growth as us as a new player is indeed a good job. Spruz remains the fourth player, though, right behind SocialGo.

I really dislike a few things about Spruz, though, and I should state them here:

1) The look and feel are pretty poor, although the templates are fairly customizable. I know that style is a subjective matter, but try it for yourself. Look and feel are critical to creating a sense of belonging within your online community. They are what makes your members feel at home. Otherwise, why not use Facebook Groups to start your own social network?

2) Spruz is new but is already starting to have technical issues. Scaling to thousands of social networks is not an easy job. We remember that from our early days in 2008. Scaling requires a lot of experience and investment.
3) A personal concern of mine is that some of its templates are exact copies from our library. Granted, some of those templates are open source, and imitation is OK to some extent—but copying our default template is not the friendliest thing you can do.
4) One thing that I recommend all community managers look at is the financial stability of the platform they choose. Hosting millions of networks is an expensive job. Spruz is secretive about its funding and corporate status. Choosing a platform is like choosing a business partner: you need some transparency.

5) In a blog post, Spruz declared that it would cut costs by removing unused communities and by not serving videos. Not serving videos or files and saving on bandwidth is understandable; bandwidth is expensive. But losing that functionality is serious. And removing unused communities is kind of a silly argument because that does not really cut many costs.

Apart from these points, I find Spruz' community management very successful. It seems very responsive to people who want to build their communities there. 

[Spruz' response can be found in comments]

SocialGo
I first heard about SocialGo, I guess, in mid 2008. Their platform is noticeably different for those who are familiar Ning. You may consider this originality and hence a plus.They are surely spending the most money in between these companies for advertising. I even see their ads on GROU.PS. They invest a lot of money in Google Ads. They should be financially more secure compared to some of the other hosted DIY social network companies that I mention here; their investors include the founders of Eidos, a big video game success. 
But the current results show that there's not much traction on SocialGo, people tend to use other platforms instead. A personal note, it never appealed to my tastes either. And perhaps the fact that almost every single thing in their admin panel is a premium feature must be annoying for the group founders.

Webs
Webs is a very old and pretty stable web site creation service. I know one of their founders and investors, they are pretty committed to what they do and they are right now one of the best web site creation services out there. However,  DIY social networking is not their core; it's an after-thought. Their DIY social networking platform is built on top of their existing web site creation platform as a patch - and that shows in the product itself with very weak social graph features, no real benefits of friending/following etc. That's why DIY social networking sounds like a me-too thing that they've done to justify their valuation in the heydays of the social networking.
All the tweets and blog entries I come across show weak signs of interest into Webs. I think that's a result of the weak social graph features I've just mentioned. People, when they sign up, realize they're not on an online community but rather a web site creation service.

Grouply
Grouply has a special place for me. 3 years ago, when Grouply was about to launch, GROU.PS was already up and running, I was introduced to them by my advisor who told me that we might be doing something similar - probably concluding from our names. Anyways, I emailed back and forth with their founders, I always enjoy meeting the managers/founders of the competitive companies, compare notes and see what we can do together to create a healthy competition environment. At that time, GROU.PS was totally a 1 man show with a single advisor, I had no funding, I was just a 23 years old guy who left his homeland with the dream of creating the world's best online community in Silicon Valley - where the software dreams come true. 
However probably this extremely idealistic character of mine made Grouply founders consider me as a potential hiring candidate rather than a competitive service provider - which I wasn't OK with of course. Months later they've launched a service which was pretty different than DIY social networking, it was an aggregator for Yahoo Group and Google Groups. But after receiving a huge number of spam complaints, it didn't take too long for them to change their product. Just last year, they came up with a DIY social networking offering, which is of course, in terms of product, years behind what we offer; as a result of starting being pretty late to the game. 
I can see that Ning's decision pushed some community managers to try Grouply as well, but the traction doesn't seem large yet.

GROU.PS
According to all independent sources GROU.PS is today the largest competitor of Ning. And again, early results show that GROU.PS and Spruz have become the biggest winners of Ning's decision to kick off free networks (even though GROU.PS has no leverage such as skysa) But I think there's much to see in this area; so everything can change. What I can observe people create their networks to try the platforms but many haven't come to a final conclusion yet. And I think that makes sense. Platform choice is a very important decision and needs to be made carefully. 
GROU.PS is a content agnostic platform that aims to monetize this space by an asymmetric business model. That means, unlike Ning, we won't sell software, that's not our plan, we will instead charge brands and advertisers. Asymmetric model works pretty well in Google, Facebook and Twitter. On the other hand, services like eBay, Amazon, Salesforce use a symmetric model (a la Ning) where they charge directly those who use their service.
We also believe in revenue share. We know you, as an organic content creator, usually are not motivated by money to create that content and get people around. But you'd love to see the benefits of your efforts and/or create a budget for your community. GROU.PS aims to do that (and already does it to a some extent) and cut a commission to pay the bills.
This kind of a business model requires us to be very careful about our costs and there comes our competitive advantages. GROU.PS' development team is pretty large yet it is based in Turkey. That allows us to create a great product at a much lower cost than our competitors. As for bandwidth costs (GROU.PS provides enormous amounts of bandwidth and storage space for its users) we have a stealth mode product that we will announce soon - and you'll see how we're able to keep the things going by some truly innovative methods. I think you should definitely keep those financial arguments in mind while choosing your platform of choice.
People usually criticize GROU.PS for not being stable and I understand that. Indeed we did have periods of time when the service was on and off and our early adopters showed great patience - which we really appreciate and will never forget (even in our pricing) But we gained so much experience at that time that I am proud to say, today we are operationally very very stable. As for the product stability, we're getting better at it too. While having a team based in Turkey is a competitive advantage in terms of cost management, it was also a drawback in terms of software engineering experience. Nobody can beat Silicon Valley's experience in software engineering. But we have an office in the heart of Silicon Valley too, and that helped our small team quickly gain the same experience as their peers in Silicon Valley and today we have a very talented/gifted team and software engineering methods that allow us to deliver you a very stable product. However, we still keep the beta tag in our logo, because our product is not at the place where it needs to be yet. Our product vision continues to drive us further and further, stay with us and you'll see some very cool stuff coming up. Of course, some rare instances of instabilities are possible due to continuous release and other agile methods that we follow - but we'll keep that very very low.
I think another thing that I need to discuss is funding. GROU.PS has done a lot with very little funding. But, although I'm not able to get into details yet, you should be confident that we're about to announce something soon that will give us a long runway to accomplish the big vision that I have very vaguely outlined here.
All in all GROU.PS is like Japanese cars. these are our baby steps, you see a great product, great innovation but you hear about some instabilities; but that's about to change; GROU.PS does not just keep innovating but is also creating a truly amazing product with superior stability than anybody else. We are committed to keep our business model asymmetric (which means free for our group founders) and innovate in terms of business as well.

Final Notes
Well I know that this post has been in favour of my company, but that's because I truly believe in everything I say here. I invite other CEOs/product managers to post their own thoughts in comments or as new blog posts and I promise to publish links to their posts from here - for the sake of objectivity and giving a very well deserved say to them too
I anticipate that Ning's decision to kick off their free networks will result in many international networks to leave. That will make Ning more US focused. But I believe, people, in time, will choose the best product in the market - no matter what, no matter where they are. Gina Bianchini, ex CEO of Ning (and a terrific person whom I had a chance to meet), once said in an interview that she believes Ning is gonna remain number 1 in this space because the network effects will speak and keep the status-quo - her examples were Facebook and Twitter's points of displacement. With all due respect, I don't agree with that. First, DIY social networks consist of networks that are isolated from each other, network effects take place within our micro social networks not through the entire network itself. Second, even though the network effects were to take place, don't forget that Friendster and MySpace were number one before Facebook took over the throne.

Like this article?
Please retweet, digg, deliciousFacebook and/or share this with your friends on Ning.

BONUS MATERIAL:

Feature by Feature Comparison Sheet


GROU.PS Growth Figures



We care about our communities. After observing a lot of education communities moving to our platform; we've decided to create 2 new templates for the education community. Here are the screenshots:



]]>
Mon, 05 Jul 2010 21:03:53 +0100
GROU.PS now syncs with Yahoo Groups http://www.emresokullu.com/blogs/101614


http://grou.ps/yahoogroups.php

]]>
Fri, 19 Mar 2010 13:20:33 +0100
ChromeOS - just like I dreamed back in 2006 http://www.emresokullu.com/blogs/80350 Webrazzi)



It is pretty similar to what I described 3 years ago on ReadWriteWeb: GoogleOS: What to Expect. In this article, I was proposing 3 scenarios, but my pick was the ByzantineOS one, which pretty much resembles to what we see today.

I'm eager to download and give it a try.  Did anyone see it live, is dual boot hassle-free? I don't think I can give up Windows right away - which also makes me think Google may either offer a Windows in the cloud service (or let Microsoft do it via Azure) or  acquire virtualization technology inside Chrome OS.
]]>
Mon, 23 Nov 2009 13:02:34 +0100
[WARNING: contains viral elements] Version 1 of Michael's Love Letter http://www.emresokullu.com/blogs/76717

My natural first reaction was to share it with my friends via Twitter and Facebook, it's so funny. And this is how you capture market share from the incumbent Microsoft, do something that the new entrants, youth, will love and spread virally.

And that's not all for me. I have also taken time to pause the video and write down what Michael was about to send Jessica before his friends came to rescue. Here is his amazing art work, totally made my day:

Dear Jessica,

To quote our old friend William Shakespeare:

"See, how she leans her cheek upon her hand! O that I were a glove upon that hand, that I might touch that cheek!"

From the first day I saw you in French 101, I only wanted to be that metaphorical glove. Though my first instinct was to tell you "je te adore," I now long to say, "Je veux etre avec toi!!!" I know we haven't talk much thse past three years, but I know you are
*~*~* The One *~*~*

Based on this conclusion, I am making a proposition to which I am hoping you will consent. In order to satrt our courtship, it is first necessary to meet in person and complete the procedure of a proper date. This could include any of the following proposed activities (though not necessarily in the current order). I have highlighted my preferred choice:

DATE ACTIVITIES
  • A film at the local theater
  • A beverage of some sort
  • A brief stroll through downtown
  • A visit to the mini gold establishment down the street
  • Playing any of an assortment of MMORPGs
  • A tour of the Computer History Museum
Please let me know in a prompt fashion whether you will partake in this date with me. An idea of your schedule in the next week would be helpful in planning this event. Please try to avoid Wednesday and Friday nights, as that is when my dorm has game nights, although you are free to stop by to join in the festivities if you would like. Sorry, that came out wrong--actually, I would love it if you came to those too, that is, if you want. Would you mind responding by tomorrow?

Dreaming of you,
Michael
]]>
Sat, 07 Nov 2009 19:44:20 +0100
Eylem 2.0 http://www.emresokullu.com/blogs/76564
Siz de bunu bir ozgurlukler meselesi olarak goruyorsaniz ve benim gibi bu olanlara sessiz kalamiyorsaniz buradan buyrun: www.eylem20.org

Biz sosyal medyanin gucunu kullanarak bir taban hareketiyle sesimizi tavana duyurabilecegimizi, Turkiye'de bazi seyleri olumlu yonde degistirebilecegimize inandik.

Cok gec degil, birkac gun once Google'a verilen hakli sayilabilecek vergi cezasi dahi, internet yasaklari konusunda yaptigimiz hatalar yuzunden, onumuze getirildi ve konu siyasi bir hal aldi; uluslararasi arenada elimizi gucsuzlestirecek bir diger konu oluverdi.



Siz de bu tarz banner'lar web sitenizde kullanarak (http://www.eylem20.org/36853) eylem'e yardimci olabilirsiniz. Ayrica uye olmaniz, arkadaslarinizi cagirmaniz (Facebook Connect ile), tweet etmeniz de gayet kafi olacaktir. Hemen su alttaki butona klikleyerek baslayabilirsiniz.
]]>
Sat, 07 Nov 2009 13:59:42 +0100
Scalability at GROU.PS Presentation Notes http://www.emresokullu.com/blogs/69959
Things to bing (or google if you want to):
nginx, libevent, memcache, danga interactive, gearman, mogilefs, nosql, cassandra, hive, hadoop, scribe, thrift, maatkit (for mysql), mmm (for mysql)


MySQL useful settings:

query_cache_size = 0 # on master
query_cache_type = 0 # on master
thread_concurrency = 8 # total cores
max_connections = 750 # shouldn’t exceed that
innodb_buffer_pool_size = 10G  # a little less than the total amount

And our typical sysctl additions; as I've promised - the configuration that lets us serve 1PB per month to 3 million unique visitors:

net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_synack_retries = 2
## Emre edited
# http://www.oracle-base.com/articles/11g/OracleDB11gR1InstallationOnFedora8.php
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl , semmns , semopm , semmni
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default =4194304
#net.core.rmem_max =4194304
net.core.wmem_default =262144
#net.core.wmem_max =262144
fs.file -max=5049800
vm.swappiness =10
## Emre edited
# from http://forums.softlayer.com/showthread.php?t=3252
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 87380 8388608
net.core.rmem_max = 8388608
net.core.wmem_max = 8388608
net.core.netdev_max_backlog = 5000
net.ipv4.tcp_window_scaling = 1
net.ipv4.ip_nonlocal_bind=1
# http://rackerhacker.com/2007/08/24/apache-no-space-left-on-device-couldnt-create-accept-lock/
kernel.msgmni = 1024
kernel.sem = 250 256000 32 1024
net.ipv4.ip_conntrack_max = 524288
net.ipv4.netfilter.ip_conntrack_max = 524288


]]>
Fri, 16 Oct 2009 13:57:10 +0100
Facebook Developer Garage Notes http://www.emresokullu.com/blogs/69570 Ozkan Altuner'e tesekkurler:


Yanimda kartvizitlerimi getirmedigim icin iletisim bilgilerimi paylasamadigim herkesi bana email atmaya emre [at] groups-inc.com ve/veya  buraya uye olmaya davet ediyorum (sorulara verdiginiz cevap sadece ben tarafindan goruntulenecek).
]]>
Mon, 12 Oct 2009 11:09:07 +0100
Note to Self: the difference between Hive and Cassandra http://www.emresokullu.com/blogs/67980 Hive and Cassandra.

Cassandra: (=BigTable=HBase) saves computational power and time (by indexing with a column based approach) but is a resource hog when it comes to storage.
Hive: doesn't consume that much storage space bit responds slowlier.

So how they are in use at Facebook.

As far as we were able to figure out, friend recommendations are produced by Hive. Hive computations are done by cronjobs. Cassandra is in use when immediate responsiveness becomes a requirement. So for example, for the inbox system.

Know more than that? Have any input on how they are being used? Please let me know in the comments.
]]>
Sat, 26 Sep 2009 20:38:31 +0100
MySQL tip: before dropping a table http://www.emresokullu.com/blogs/63377
show table status from DATABASE_NAME like 'TABLE_NAME'G

This gives you an output such as:

mysql> show table status from groups like 'analytics'G
*************************** 1. row ***************************
           Name: analytics
         Engine: MyISAM
        Version: 10
     Row_format: Dynamic
           Rows: 453161
 Avg_row_length: 343
    Data_length: 15573804
Max_data_length: 281474976710655
   Index_length: 2778112
      Data_free: 0
 Auto_increment: 158700
    Create_time: 2009-08-20 14:26:29
    Update_time: 2009-08-23 12:33:49
     Check_time: 2009-08-20 14:26:31
      Collation: utf8_unicode_ci
       Checksum: NULL
 Create_options:
        Comment:
1 row in set (0.00 sec)

Bold section is the last modification date.

If it's NULL, that means you probably can remove it safely.
]]>
Sun, 23 Aug 2009 17:44:31 +0100
Social Beans covered on ReadWriteWeb http://www.emresokullu.com/blogs/62533 Dana Oshiro's coverage: http://www.readwriteweb.com/archives/magic_beans_grow_portable_social_networks.php
]]>
Thu, 20 Aug 2009 09:49:29 +0100
High Performance MySQL Scaling notes / tips http://www.emresokullu.com/blogs/61788
  • MySQL Cluster is not the solution; consider it as a different database and don't forget that it's not very efficient, so ends up costing you much
  • Use Memcached
  • Your memcache machine should be close to your application/web servers, not the database
  • Sharding is hard. There are things you can do before sharding. Replicate as much as you need, so that you can split read and write operations. One machine dedicated to write only.
    • Then the most logical thing to do for sharding is horizontal sharding; which means host different tables in different machines. But this is needed only in extreme cases, as you grow like crazy, like grou.ps
    • Before that, you can maximize your write capabilities, you can get a beefy server with 128MB of ram, 4x Hexacore processors. Note that you'll need to use xtradb on such a configuration because regular mysql setup does not scale well to more than 4 cores, instabilities do occur.
    • And even before that, try optimizing your code. 
  • You can optimize your queries by enabling logging of the slow queries
  • For a 16GB of ram, 400 is the maximum number of connections you need to have on the machine.
  • If SHOW PROCESSLIST; displays too many Sleeping connections, no problem, don't worry about them.
  • You don't recover from table locks with myisam, auto_increment still requires table lock
  • Use maatkit tools. mk_audit recommended as a good start
  • If you are replicating, you'll need mk_slave_restart at some point, but don't forget that, it's dangerous, can create inconsistencies
  • use mk-query-digest to collect information about the incoming mysql queries; then you can optimize them using the EXPLAIN command - tcpdump is a microsecond level alternative for the very same job
  • take off unused databases and tables
  • for a fast updating environment, cronjob mk-query-digest and mk-duplicate-key-checker
  • Consider a dual master setup; use mmm (1.x branch is recommended as of this writing) or flipper - good 
  • hot backup strategies: lvm_backup, mk-parallel-dump, innobackup,
  • do not use set where you can use enum; set is for options that can be chosed more than once
  • vmstat 5 5 to see the status of your disk
  • even though you don't use myisam, the minimum key_buffer size should be 32MB
  • InfoBright is good for analytics tables
  • XFS is good as the underlying filesystem of innodb systems.
  • If you have other tips, please add in the comments; this list will be updated with your name.

    Other Sources:
    http://20bits.com/articles/10-tips-for-optimizing-mysql-queries-that-dont-suck/
    http://provenscaling.com/blog/2008/10/09/introducing-flipper-for-managing-mysql-master-pairs/

    http://provenscaling.com/software/flipper/docs/html/
    http://www.howtoforge.com/mysql_master_master_replication
    http://www.howtoforge.org/mysql_database_replication
    ]]>
    Mon, 17 Aug 2009 09:11:15 +0100
    How to keep good people at your company - 2 http://www.emresokullu.com/blogs/59558 how to keep good people at your company" - The answers started to come in and I got 2 comments so far; both of them suggesting the importance of materialistic satisfaction:
    • Hidayet Dogan, one of the best Turkish PHP programmers I've seen so far (based on his resume and projects) dreams of a Google like office environment, full of gadgets and big LCD displays.
    • Eren Yagdiran, whose diverse array of interests can be found on his personal blog, says it's all about money.
    I agree with both of them. And I'm very happy to announce you guys that our new Istanbul office that will make its debut this August is going to be just like that - satisfying your inner child with a Google-esque environment.

    But I think I found the best answer in the book that I've been reading this weekend, Outliners by Malcolm Gladwell. I'll quote 2 of his sentences:
    Those three things--autonomy, complexity, and a connection between effort and reward--are, most people agree, the three qualities that work has to have if it is to be satisfying.
    Hard work is a prison sentence only if it does not have meaning. Once it does, it becomes the kind of thing that makes you grab your wife around the waist and dance a jig
    At GROU.PS we try to foster a corporate culture that provides those 3 things, all at the same time:
    • Autonomy: Our management type can be considered democracy under meritrocratic feudalism. There's a loose hierarchy which gives its nodes the freedom to show their creativity without the boundaries of bureaucracy, and the chance to have your own team if you can prove yourself to your "lord". The hierarchy is not fixed, it's dynamic based on your merits.
    • Complexity: What we're doing here is literally social operating system. If you think it's just a content management system or something like that (and if you're qualified enough) you're welcome to our office to see what kind of things and what kind of an architecture that we're working. I don't claim it's rocket sciences, but it's pretty close.
    • Connection between Effort and Reward: GROU.PS is a global venture with chances of being acquired or going IPO. And besides the fixed salary, we are committed to give a generous amount of sweat equity and/or stock options to our employees according to their commitment and role in the team.
    ]]>
    Mon, 10 Aug 2009 05:07:27 +0100
    My Amazon Kindle Impressions / Observations http://www.emresokullu.com/blogs/59133 UPDATE: forget my negative observations - it just takes a little while to get used to it.

    Negative Ones
    • As you browse through the pages, the screen flicks, and it temporarily displays randomly located black spots - which results in poor user experience.
    • There could be a separate button for Kindle Store
    • Buttons seem to be low quality
    • Packaging was not as good as I was expecting - my anticipation was a true Apple experience, but it was far from that.
    • I miss the multi-touch screen of iPhone, it could make note-taking a breeze - which is, I think, a natural component of our reading experience.
    • Poor blog reading machine, because no images, no Flash components - which are crucial parts of blogs.
    • Can't delete a book that you've purchased (or there's no easy way)
    • Chaging pages is slow, once you lose the page, it's so difficult to find wherever you were at
    Positive Ones
    • You can send yourself docs via email - big WINNER!
    • Amazon.com integration is much better than what I was expecting
    • Text to speech sounds better than what I was expecting, it's pretty understandable.
    • Bonus feature: browse the web - even though it's only in text-mode, fine!
    • Very easy to get started
    • Letter of Jeff Bezos :) the gadget makes you feel special right from the beginning, because your account info is there, saved, so you don't need to deal with it. Bezos' letter starts with Dear __your name__ :) nice...
    All in all,even though my negative points outnumber the positive ones, I liked Kindle. These are only my after buying impressions, I was already pretty positive about it before purchasing and perhaps that's why my expectations were so high.

    I think it's worth price, especially when consider the fact that you save the shipping price and there's no waiting, plus Kindle books are much cheaper since they come with no physical costs. The device looks cool too. Highly recommended.
    ]]>
    Sat, 08 Aug 2009 02:54:42 +0100
    How to keep the good people at your company http://www.emresokullu.com/blogs/57808 ]]> Mon, 03 Aug 2009 04:36:32 +0100 Simdi Basliyor Olsaydim... http://www.emresokullu.com/blogs/57558
    Ama bence bunun en buyuk sebebi Facebook Platform ve iPhone'un yazilim dunyasina getirdigi yeni boyutlar. Ozellikle de iPhone... Konum temelli servisler....

    Ozellikle Facebook ve iPhone uzerindeki oyun dunyasinda buyuk firsatlar var. Genc bir girisimcinin en kolay flip yolu hic suphesiz bu ortamlarda oyun yazmak. Basta Zynga, EA ve ngmoco genc oyun sirketlerini (microstudios) almaya oyle ac ki; http://gamemakers.ngmoco.com/ tek basina yeterli bir ornek olsa gerek.

    Ama flip'i birakin - birkac arkadas bir araya gelerek buralarda baska buyuk isler yapmak icin de bircok firsat mevcut.

    Su an bildigim birkac iddiali Turk Facebook developer da var - ama onlari, izinlerini aldiktan sonra, baska bir yazinin malzemesi yapabilirim :)]]>
    Sun, 02 Aug 2009 18:30:46 +0100
    Hilarious - Social Networking Wars http://www.emresokullu.com/blogs/57008 ]]> Fri, 31 Jul 2009 03:44:34 +0100 Bing on Yahoo http://www.emresokullu.com/blogs/56728 news for the internet and search industries; Yahoo gives up its search unit and starts using Microsoft's Bing as its main search provider.





    I think this does mean efficiency for both parties, and it's beneficial for everyone. As Steve Ballmer suggests, a stronger competitor to Google means advertising dollars to split; because right now, all the advertising dollars on the web are going to Google as the competitors have negligible market share when they are divided. But 30% market share against Google's 70% is a significant enough and respectable number that gain the attention of advertisers all around the world.

    OK.. So I'm mostly positive about this deal. But what's the downside? I think there's 1 downside for Yahoo; the integration time is too long - 24 months - and this might cause an alienation in Yahoo's user base. Because probably, with this news, the rumours of Bing's search technology is so strong will spread out everywhere. And just like what happened with Yahoo - Google years ago, the remaining users of Yahoo may switch to Bing as well, as a result of those words. Probably Yahoo's bet here is that, the remaining users are loyal, they haven't switched to Google for the search technology, so they won't switch to Bing as well. We'll see...

    And as for Microsoft, as one of the bankers asked, the financial upsides for MSFT side is not as clear as it is for YHOO. But my gut says this deal will take the combined entity's revenues so high that it will be beneficial for both Yahoo and Microsoft.

    I'm glad that Yahoo will have more opportunity to focus on their core values. And again, congratulations Jerry Yang for making the right move and not selling Yahoo a year ago - that alone was a very big decision and I believe, people will appreciate it years later.
    ]]>
    Wed, 29 Jul 2009 13:47:24 +0100
    Tweak Apache to handle large traffic and large process http://www.emresokullu.com/blogs/3702 If your site isbuilt from heavy php files like us, you're probably using apache's prefork model (instead of a mpm such as worker, which would be more efficient but cause stability problems with zend engine) and as your site grows, yu apache will start forking way too many threads.

     

    As a result you may end up forcing hte limits of your operating system's default configurations.

     

    At Linux, there are 2 important sysctl configurations that can affect the performance of your site in high-load sitatuons; they are: kernel.shmall and kernel.shmmax

     

    You can use their current values by typing:

    touch /proc/sys/kernel/shmall

    and 

    touch /proc/sys/kernel/shmmax

     

    shmmaz should be around 32MB.

     

    The solution is as easy as increasing it, and fortunately  that doesn't requre kernel recompilation.

     

    Here is what you should type:

     

    echo 134217728 >/proc/sys/kernel/shmmax

    aand

    echo 134217728 >/proc/sys/kernel/shmall

     

    Now both are 128MB and you're all set. You may want to save these changes in /etc/sysconfig.ctl as well and to see all values, type in sysctl -a

     

    Hope this helps,

    ]]>
    Wed, 10 Dec 2008 18:31:53 +0100
    Having problems with Zend 5.5.1 License http://www.emresokullu.com/blogs/2618 So Zend 5.5.1 doesn't let you in even though you got their license. It says "this license is already in use" and turns you down? The solution is simple; just unplug your computer from the internet at the launch of Zend; or turn on your firewall so that it doesn't let your Zend communicate with outside world. 

    The thing is Zend is communicating with a central server and queries if your license is being used by another computer too at the same time. This is probably to prevent piracy. However, it doesn't work so well in my case and you can end up with not being able to use it even while you're using it fairly.

    Zend 6? No way.. It's Eclipse, it's slow and most importantly, it's still immature...

    at least as of 11/08/2008 

    ]]>
    Sun, 09 Nov 2008 05:33:06 +0100
    How to Add a GET Variable to A Href http://www.emresokullu.com/blogs/2466 Hi folks, just wanted to share a quick tip I've found while hacking PHP Smarty. First let me state the problem; on grou.ps home page, we allow our visitors to change the language of the site by clicking the flag buttons. What these nice flag buttons do is simply to add a ?lang=X suffix at the end of the page; it's pretty simple as shown in this example: <a xhref="?lang=en" mce_href="?lang=en"><img xsrc="english_flag.gif" mce_src="english_flag.gif" /></a>

     

    Now let me tell you how I allowed Smarty to place all existing GET variables into this equation; because if we don't put them, the localization of a page such as: http://grou.ps/login_recovery.php?lang=tr&email=iltates@gmail.com&serial=699786 becomes a mess; Smarty automatically trims it and the link becomes http://grou.ps/login_recovery.php?lang=tr


    Drums please, here comes the solution: here is the actual code, just take a look at it, you'll understand:


    <a xhref="?lang=en{foreach from=$smarty.get item=g key=k}&{$k}={$g}{/foreach}" style="border:0;"><img xsrc="images/flag_en.gif" mce_src="images/flag_en.gif" alt="EN" width="21" height="21" style="border:0" /></a> 
    

    This part does the magic by running a simple Smarty foreach loop and leveraging Smarty's reserved variables:

    {foreach from=$smarty.get item=g key=k}&{$k}={$g}{/foreach} 
    
    ]]>
    Tue, 14 Oct 2008 07:01:14 +0100
    Tasindim http://www.emresokullu.com/blogs/2221 Blogumun yeni yuvasina hosgeldiniz. Bundan boyle Grou.ps platformu uzerinde bloglayacagim. Bu bana Wordpress'in spam ve surekli update problemlerinden kurtulmami saglayacak; ustelik uzerinde bunca kafa patlattigim platformumuzu daha da fazla kullanma firsati verecek.

    Benim bu platformu bloglama icin kullanmami saglayan son birkac ayda yaptigimiz inanilmaz teknik gelismeler. Gordugunuz gibi template'im eski Wordpress template'imle ayni. Bunu sadece Grou.ps'ta bulunan sinirsiz sablon duzenleme ozelligine borcluyuz. Sinirsiz sablon duzenleme konusunda daha buyuk surprizlerimiz yakinda gelecek.

    Bunun disinda artik ancak gelismis blog yazilimlarinda bulunan trackback ve ping'leme ozellikleri Grou.ps'un blogs modulune de (experimental stage'de de olsa) eklendi.

    Ustelik artik sidebar'a da istediginiz widget'lari ekleyebiliyorsunuz, yerleriyle oynayabiliyorsunuz. Birazdan LinkedIn ve FeedBurner widget'larimi oraya koyacagim. Orayi her turlu Google Gadgets ile donatmak mumkun.

    Isin guze yani, Grou.ps bir blog platformu degil, bir online community araci, bir sosyal uygulama ortami. Ama iste o kadar ozellestirilebilir ki, onu istediginiz amacla, istediginiz sekilde, istediginiz gorunumde, istediginiz dilde kullanabiliyorsunuz.

    Grou.ps su haliyle bir Wordpress.org alternatifi mi? Spektrumun genis kismi icin kesinlikle evet, cok gelismis kullanicilar icin daha zor bir evet. Soyle ki;

    • Moduler yapi (tek tusla forum, wiki, foto album ekleme) genel kullanici icin sevindirici. Bloguna cok zaman ayiran kullanici ise Wordpress'in sinirsiz plug-in ekosistemini ozleyecektir. Ama umut ediyorum ve inaniyorum, yeni acik kaynak Grou.ps'un yakinda kendi ekosistemini olusturduguna hep beraber tanik olacagiz. 
    • Spam, kurulum, guncelleme dertlerinden kurtulmak genel kullaniciyi sevindirecek ozellikler. Ustelik komunite odakli olma, yani okuyucularinizin profilleriyle blogunuz etrafinda bir sosyal ag olusturacak olmasi, forumda tartismasi (Mashable benzeri) bir diger arti.
    PS: bu blogun bir diger artisi, gercek zamanli Cha. Grou.ps uzerinde oldugum surelerde beni burada chat'ten yakalayabilirsiniz! (chat ozelligi uyelik gerektirir)]]>
    Mon, 25 Aug 2008 23:48:35 +0100