Ben Forta just remembered. I remember my first baby steps into CF back when it was "Cold Fusion", at 1997, working at a company that was upgrading from 2.0 to 3.0. I was only 17 but I knew it would change my life and woo-hoo, look where am I now. Thanks and long live, ColdFusion!
And yes, I know this is abandoned. It's just for now, in a month or two I hope to come aggressively back. Wait for it :)
Labels: ben forta, coldfusion
Leave a comment | Links to this text |
It take me some time to write about it as I wanted to read almost everything people wrote before. At the end of this article you'll find a lot of links to blogs and websites that I read before writing this.
First a note I took at the first sight of this news: it's very good for the CFML as a language and for the ColdFusion market overall. It can help developers to first learn CF, use it on their projects and renew the market around Adobe's (and New Atlanta's, see below) product.
Although I think it's good, I don't think the OS world will embrace CFML on the long run. They already have PHP and other options like Ruby so why? 'Cause CFML is so easy to program with? A lot of open source programmers I know thinks it is a problem, not an advantage.
But the situation may change a lot if - and only if - New Atlanta and Adobe put some effort on the OS option. Why Adobe, you may ask. Having an OS version to kick start with CFML is great for Adobe, specially if they don't have to OS ColdFusion (their own product) to achieve this.
They can sell a better and increased version, they can make the BDOS compatible with their own product, making sure that people who start with BDOS can "upgrade" to Adobe ColdFusion without a lot of work.
But, as people noted around the "blogosphere", the CFEclipse plugin didn't catch with the "ColdFusion OS community". Smith, another OS option to Adobe ColdFusion, didn't had a lot of developers jumping in and probably New Atlanta's BD will have not either. One can argue that it's about the lack of features - how can you expect people to contribute within something buggy and featureless? But that's not the excuse for CFEclipse, who is a great plugin. Adobe - and Macromedia, before - wasn't known for their efforts to help the community spread the word - even knowing that developers are always busy and active doing it for them.
The license adopted will be GPL - the same way MySQL does. If you want to distribute your software with BlueDragon, it'll have to be open source by GPL too. The .Net version will not be open sourced, only the J2EE - and for companies or individuals who doesn't can/want to share, there'll be another commercial license.
The announcement was made but the "real product" isn't there for people to mess with now - it'll be in June 2008. Now the links and comments on then:
New Atlanta's annoucement
www.dcooper.org
Damon Cooper makes a harsh comment on New Atlanta's announcement, claiming it is a "defeat" for Blue Dragon. As a lot of commenters on the topic, I don't plainly agree with him...
Interview with Vince Bonfanti
Mr. Bonfanti is president and co-founder of New Atlanta. In this excellent interview to Dan Wilson at ColdFusion Zone he speaks about the ways New Atlanta will be serving the OS version of Blue Dragon, the licensing and other interesting details. Worth the reading!
How to get involved with the Open Source version of BlueDragon
An Architect's View
Sean Corfield wisely makes a cautious comment on the announcement and I share his opinion: the future lies on the open source folk's acceptance of this new language.
ColdFusion Jedi
Raymond Camden's adds to the discussion but the real treasure is on the comments. Brian Swartzfager's and Gary F's comments about the hosting companies picking BD over Adobe ColdFusion (or allowing users to install it) could really change the face of CFML market over time. Great discussion!
Fusion Authority
Charlie Griefer takes another shot on the announcement and here I find someone who believes Adobe could weight in by open sourcing their Standard version of ColdFusion. I don't believe they'll go so far, but it would be an interesting move. Some CFML Standards Committee with Adobe and New Atlanta, and Railo and Smith joining on BDOS would be really amazing... and really change the CFML market around the globe.
Simon Whatley
This is a blogger that I learned to watch closely as he is a great article writer, but on this he only posted a quick note and pointed to...
Aarrgghh!!
By Terrence Ryan. After an opinion that I agree on - that the community will not see any "gains" with this, specially "right now", he aims at the "sides" opinion, believing that there would be two market views - the "free" vs "paid" solutions, betting Adobe will win with the paid one. I don't know if he is wrong, but I believe on the kick start with the OS/free solution then upgrading to a paid solution. It happens a lot with PHP? No. But it happens with MySQL and New Atlanta is acting like it so they can be successful. Let's see.
CFGigolô (in Portuguese)
The announce even make it on Brazilian blogging community, with Alex Hubner posting a single note telling how he thinks this is an important move for CFML community, specially here in Brazil where - it's true - it's not common to pay for a web language solution.
And that's it. Obviously we'll have to watch it over time to see what really happens, but the announce really caused a lot of fuss inside the community - don't know if outside too - and it has potential to change things. I'll be using BDOS when it becomes available and posting notes here.
Labels: adobe, bluedragon, cfml, coldfusion, hosting, opensource
Leave a comment | Links to this text |
News on Google confirms Sir Arthur's death
Great science fiction author, maker of the script to Kubrick's "2001: A Space Odissey", one of the most important writers from the last century. He passed away today at 90.
Farewell and thanks, Sir Arthur C. Clarke, for all the moments of pleasure, wonder and hope with the science in your fiction.
Note: he passed away on the morning of March, 19, at Sri Lanka. More information on him:
Wikipedia
On Google
Leave a comment
|
Links to this text |
![]()
A guy at his daily way to MIT in USA shoot a couple of people using the Amazon Kindle and that strange thing that Sony called an e-book reader. Amazing to see it becoming more and more ubiquitous. Freedom from the paper! :D
Labels: e-book
2 comments | Links to this text |
As I create my studies map, marking links and technologies to know, practice and get some knowledge, I think about what should I do? What should I create as I study this APIs, languages, etc?
And every now and then one thing comes to my mind: contact management. Today it's so hard to maintain accurate and up-to-date information on your contacts that I sense a real lack of an easy-to-use, complete and extensible application.
This is only me? There's someone out there that feel the same?
My first appointments to the final application, the "app should enable":
1. data grabbing from social networks (as many as possible);
2. control over data modified on these social networks and enable the user to decide if the update should or not be applied;
3. a history of applied updates, easily accessible at contact profile;
4. import and export data in various formats, including to cellphones, smartphones, Palms and the likes;
5. desktop offline option, using AIR, GoogleGears, SilverLight, anything.
Well, someone to weight in with ideas or is this kind of application dead on its conception? There's something out there that really does this?
Labels: internet business, opensource, simplicity, usability, user-centric
Leave a comment | Links to this text |
There are a lot of blogs and traditional media news reporting the delay on the Zune's valentines special edition delivery. But the major blog/media coverage was about the answer MS gave to its buyers: "We are sorry for the delay. We'll refund you. AND you'll get your Zune for free."
That's it. They can't make what they promised, they will give your money back and then give you the product they promised. I'll not talk cheap here about doing this kind of thing - obviously, MS do that to attract media coverage and to potentially get a differential from Apple, who's best known to launch better products over newest products and made all their customers unhappy. Some people are ironically saying that's because they didn't sell so it's not really a backlash for MS to give it away...
But a lot of companies - and here I'm talking specially of Brazilian ones - should learn from that example. Although there's a "customer code" law ("código do consumidor", in Portuguese) there are a lot of service providers who don't get even closer to really help their customer.
Refund or "get it for free" is a great way to show compromise and ethics in business. One thing that always made me proud about my ex-company (GrupoW) was that. No matter the financial backlash, we never let any client alone. We stick with the projects till their end, renegotiate, found ways to get it done. Still now that I'm out of the partnership, we are offering clients some options and I'm helping their employees with some older softwares I made to not let clients with errors or incomplete systems. I'm not saying we - or me - where perfect, but we're trying to build on confidence, respect and professionalism. Sometimes we failed, assumed and somehow corrected it and then moved on.
That's what I call ethic, respect and doing your job. MS is learning that - or at last is opening a great precedent and starting a discussion about it. I only hope this expands more and more into the services area, where things are never really clear, specially on-line.
Note: get this news firstly from an ironic post - in Portuguese - by Carlos Cardoso at MeioBit web-site, linked right bellow this post title. Only to show an example of the article, here goes a lousy translation of the title: "One more dirty MS way to get more consumers: respect".
Labels: brasil, internet business, microsoft, respect
Leave a comment | Links to this text |
UPDATE: This web-site will be moved from GrupoW servers to CrystalTech this weekend. Expect some downtime, but not much.
I've left the partnership at GrupoW in December, 2007. So I'm now trying to put everything on my personal life together, as I spent so many time working on the company progress and so little taking care of myself.
One of the things I want to do is to learn the right way to do CFML in ColdFusion 8 (love the simplicity of the name). When working with GrupoW, I had a lot of legacy code from CF5 and CFMX6.1 to deal with - they could be brought to ColdFusion 8 and work, but they would not take advantage of the new features.
So, as I'm flying alone now, while I'm still putting things together on personal level, I'll try to upgrade my CF knowledge to take full advantage of CF8. But then it comes to learn a lot of OOP, which I really didn't get from all this years of development. Like Ben Nadel I'll have to work my way through the OOP world.
And then it all comes to a career change. I'm not sure what I'll do after this "sabbatical break" mixed with vacation, studies and reflection, but I'm sure as hell that I need to learn a lot.
So if you're reading this and can point to some resources for getting OOP the right way and CF8 too, I'll thank you. Please don't recommend blogs in general, as I read a lot - more than 200, majority technical and CF - of then. But pointers to specific blog posts are welcome.
Labels: coldfusion, internal message, oop, simplicity
3 comments | Links to this text |
Well, I had an error report from a client of my ex-company. As I have an agreement with them to cover these situations I looked at it and thought "Oh no! The damn 'null null' error!".
So what was going on? Follow me:
I have a report that permits the client to find specific information about who receives referral fee over their contracts. So the client selects an user to search for and submits.
The ColdFusion template then search for referral fees this user receive in an referential table, which returns the contracts IDs. Then I search the contracts for details and loop over the contracts to mark which of them has already paid some referral to that user, do some formatting on the client's name and re-sort all data by paid, expiration date, finished date and then contract title.
To clarify, some code (I use "SELECT *" just for simplicity, don't do that on your code):
<cfquery datasource="dsn" name="qReferrals">So what the heck am I doing here? Well, I search for the referrals, verify if there is any, then I search for my contracts, creating two "to-be-filled" fields:
SELECT DISTINCT(contract_id) AS contract
FROM contract_referrals
WHERE user_id =
<cfqueryparam cfsqltype="cf_sql_integer" value="#form.user_id#" />
</cfquery>
<cfif qReferrals.recordCount>
<cfquery datasource="dsn" name="qContracts">
SELECT *,
0 AS paid,
'' AS clientName
FROM contract
WHERE contract_id IN
<cfqueryparam cfsqltype="cf_sql_integer" list="yes"
value="#valueList(qReferrals.contract)#" />
</cfquery>
</cfif>
0 AS paid,I thought the first one (paid) was being created as a NUMBER, a INT or TINYINT, I really doesn't care - but a damn number. The second field doesn't matter for this example. Alright? Let's go on:
'' AS clientName
<cfloop query="qContracts">Here I go through all the contracts found and search one by one for paid movements on the movement table. If I found one or more, I change the "paid" flag from 0 to 1. Pretty simple, uh?
<cfquery datasource="dsn" name="qPaid">
SELECT movement_id
FROM movement
WHERE contract_id = <cfqueryparam cfsqltype="cf_sql_integer"
value="#contract_id#" />
AND
movement_paid = 1
</cfquery>
<cfif qPaid.recordCount>
<cfset qContracts["paid"][currentRow] = 1 />
</cfif>
</cfloop>
<cfquery dbtype="query" name="qContracts">Again, pretty simple. I'm just reordering the query, using a query of queries and the already filled field that I created within the first run of the query.
SELECT * FROM qContracts ORDER BY
paid, expirationDate, finishedAt, title
</cfquery>
<cfquery datasource="dsn" name="qReferrals">And this is the code that works, but just 'cause the type of my data doesn't matter at all (I can sort from numeric or string types easily), but if that wasn't the case, I would be in trouble.
SELECT DISTINCT(contract_id) AS contract
FROM contract_referrals
WHERE user_id =
<cfqueryparam cfsqltype="cf_sql_integer" value="#form.user_id#" />
</cfquery>
<cfif qReferrals.recordCount>
<cfquery datasource="dsn" name="qContracts">
SELECT *,
'0' AS paid,
'' AS clientName
FROM contract
WHERE contract_id IN
<cfqueryparam cfsqltype="cf_sql_integer" list="yes"
value="#valueList(qReferrals.contract)#" />
</cfquery>
</cfif>
<cfloop query="qContracts">
<cfquery datasource="dsn" name="qPaid">
SELECT movement_id
FROM movement
WHERE contract_id = <cfqueryparam cfsqltype="cf_sql_integer"
value="#contract_id#" />
AND
movement_paid = 1
</cfquery>
<cfif qPaid.recordCount>
<cfset qContracts["paid"][currentRow] = "1" />
</cfif>
</cfloop>
<cfquery dbtype="query" name="qContracts">
SELECT * FROM qContracts ORDER BY
paid, expirationDate, finishedAt, title
</cfquery>
Labels: adobe, cfml, coldfusion, work
3 comments | Links to this text |
Since my last text, a lot of talk has gone into the blogs about the open social layer that Google is trying to implement.
As already pointed, this approach tries to rival with Facebook, by leveraging power and option for the developer, who has not to re-write its widget/app for each social network he intends to target.
But Google's proposal has drawbacks, too. I haven't seem any "license agreement" or something like that. To be truly open, the social layer has to allow social networks to join and feel safe about the environment they're joining. What if Google starts to charge then? What if Google starts to charge developers? Like Google's approach in many of their APIs and open initiatives, there's a lack of transparency that makes me feel a little "F. U. D." about sticking to them. Let's wait the official site on this.
Another thing to note is: everybody is taking this Google initiative as a reaction to Facebook "growth and profit", but it's real? I think Google is constantly and consistently advancing in this direction (open social layer and using social data beyond Orkut and other social web-sites/apps) since sometime now.
-
I'm long wanting and talking about a social-powered internet, where your network (friends, co-workers, etc) matters. And where you can use they knowledge and data to make your life easier, to get your attention focused on what really matters. From anti-SPAM and anti-VIRUS systems to better search results/page rank, the use of social data can make our on-line life easier than never.
-
Bob Sutton (writer of "The No Assrole Rule") talk about Mozilla Foundation and their commercial counterpart, Mozilla Corporation. It's a long but entertaining post about the numbers Mozilla has made. Worth the read but you have to know that actually, too many of this money comes from Google, who pays Mozilla for every search started through Firefox by Google's embedded search box.
-
W3C finally has opened an office here in Brazil, aiming to help Brazilian's internet authorities to develop, promote and implement web standards. I sure hope this comes with some law enforcing the use of web-standards at least at government web-sites - or something like that for commercial web-sites.
As I love web opportunities and freedom, I'm also a web-developer since Netscape and iCQ days. The lack of standardization through user agents is a major drawback for the "web-everything" approach we all love so much.
-
Finally, trying to find some answer to a strange bug in ColdFusion MX 7.0.2 - where cfdocument tag generates a PDF without justifying the text - I ran over a blog post by Andrew Powell complaining about the lack of standardization on CFML (the open-source language besides ColdFusion).
I'm with him: there's need to standardization through CFML implementations and that includes Adobe. People at Adobe has to know that we do not buy ColdFusion on the tags but on the surrounds, ie, the administrator interface, the possibility to extend CF power with other applications such as Flex, LifeCycle, Flash, etc.
The standardization do not need to go with ColdFusion being open source, Adobe can implement advanced functionality that will degrade gracefully in others implementations, at least until they can make something more likely what Adobe ColdFusion does.
-
Talking about standardization, what is happening at Microsoft? SilverLight? (yeah, I know, old news). Come on! There's Flash out there for so many time, you really believe people will change? You're nuts. And you think we, web-developers, are learning machines of some kind and we do not need to sleep, eat, have sex, etc.
Go with what is already a standard - as everybody does with Windows - and stick with Adobe Flash.
Labels: adobe, cfml, choice, coldfusion, google, high-tech, internet business, microsoft, respect, simplicity
Leave a comment | Links to this text |
UPDATE: TechCrunch reveal that Google will launch their Open Social approach on Thursday. More important, Michael Arrington's post explain better what will be this approach. Right on time!
Today, a co-worker saw my web-site and I felt ashamed about this blog. There's a lot of things to talk about, a lot of insights and readings to share. What a great incentive to come back, not be ashamed of my own employees!
The reality is that work, when done right, gives you the time of your life for (almost) anything you want to do. I have a lot of interests competing for my attention and I'm not a good time-organizer. So, this was to present my excuses about being away for so long and to introduce one of the subjects I want to discuss here.
Although widely discussed, time management and projects management (not work-related only) are still lacking something. Or maybe I have to study harder to understand how can I be more productive. Which is, for what I'm concerned, a great lack of all systems out there: they're not really easy to implement/stick with.
I'm not talking about changing habits - yeah, that's hard. But when you try to read "Getting Things Done" or "The Seven Habits of Highly Effective People" - for instance - you get stuck in an ocean of "why you have to do this", lame examples of how you can succeed and things like that.
Here I have to say that I do not finished "GTD" (nor the "7 habits"); although I really think it's great, I lost the will to apply the method by the first half of the book. I keep saying to myself "I'll try it again, I have to, it works for so many". But the main point is still there. Theres any stupid-proof method to get things done?
-
Another thing that keeps annoying me is how my life isn't organized. Well, call me a librarian or a standard nerd, but I like to have my friends addresses just in one place. If this "one place" is somewhere that I can access through my cellphone, my e-mail app, my web-browser (and my web-mail) and from another devices/platforms, or it's something that will sync with then all, I don't care. I just want a simple way to have my data synchronized between apps, gadjets and even computers. And I'm talking about something as trivial as our "address book".
-
All of this comes from some thoughts that are burning my head for a some time:
1. I want to use web-apps. Really! I'm connected almost all time. I develop them since 1996.
2. But when I'm not connected, I want to be able to access my data and use my apps, even in a simpler way.
3. My data is MINE. What the HECK? Let me export it, even if it isn't in a perfect way; let me get ALL MY data when I want to. I have to make backups, I have to access it offline - or maybe I have to change service. Yes, face it, your web app maybe isn't as great as you think - or maybe someone just made something better. Or I was in a bad mood when your server was down. So, give me what is already mine.
4. Besides finding old friends, checking possible future employees (or girlfriends ;) and other personnel-related tasks, social network should evolve to allow you to use your friend's information to decide what is relevant to you. I'll extend this in a post sometime latter this week, but imagine a social-relevant Digg. I'm talking about something like that - what matters to my network matters a lot more to me than what matters to a lot of unknown people. Complicated? I hope not.
-
There's some technology - which I'm not already familiarized with - such as Adobe AIR (and MS SilverLight, maybe Prism?), Google Gears and the recently announced efforts of Google to build APIs and leverage the data under its hook to developers. This all will be targeted at this weblog now and then, as well as all web-related technologies, ColdFusion, Java and a lot more.
I hope it'll be fun for us all and I'm really glad to come back here. Let's see if I can stick with this.
Labels: adobe, coldfusion, google, high-tech, internet business, mashups, microsoft, simplicity, usability, user-centric
Leave a comment | Links to this text |