Builtind culturally aware applications
-
Gary Kirkham wrote:
I didn't know there was a such thing as a buddhist calendar...interesting
Neither...it is interesting and yet frustrating. :)
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
PCSpectra wrote:
Gary Kirkham wrote: I didn't know there was a such thing as a buddhist calendar...interesting Neither...it is interesting and yet frustrating.
Frustrating like having to support inches in design software because the US won't go metric... :mad:
-
In the world of web applications I happen to think it's very important to at least work towards developing truly internationalized applications...not just language lookup which is trivial, nor locale formatting, such as currency, etc... I've have read up on much of the caveats when building culturally aware applications and made some interesting/annoying discoveries. :P Only annoying because it just means more work, but I digress. In Thailand, they use a Buddisht calander as I understand. And this calendar has 385 days per year (or some greater than Julian/Gregorian or which ever it is I use). I always thought some values were undisputable, such as seconds in a minute. Is it safe to assume then: 60 seconds = 1 minute 60 minutes = 1 hour 24 hours = 1 day Is it only the the number of days per month that changes from calendar to calendar? How does the Buddist calandar have 385 days on leap years if it's a universally accepted that there are 24 hours in a day or 60 seconds in a minute? If I make the above assumptions, which all my calculations be culturally accurate? I use a the ICU libraries to perform most date calculations and apparently they are aware of the caveats and adjust accoridingly... But to deal with fragments on a more atomic scale like above, will these work undoughtedly? Cheers, Alex
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
Your (and mine) english calendar is a solar calendar. Earth takes 365.25 days to revolve around the sun. so, english calendar has 365 days every year with a leap year every 4 years. But at some places, particularly chinese and other mid-east countries, calendar based on motion of moon around earth is used. Since days between Full moon to full moon is about 29.5 days, so the months are alternatively 29 & 30. The fascinating thing is if according to lunar calendar you are born on 1st july, 2000 then next year in 2001, you will not celebrate your birthday on 1st july but on the day when the position of moon will be similar to what it was on 1st july, 2000. This way you can delay your birthday party until you get money in your pocket. ;P (and you thought smart people use solar calendar!) I did some work on this in my app. Check the following links...may be of some use to you. http://www.hko.gov.hk/gts/time/conversion.htm http://en.wikipedia.org/wiki/Chinese\_calendar BTW if your application is in dot Net, then there's a class which does all the calculations for you for converting between solar and lunar calendar. you need to dig into msdn for that.
-
Just out of interest, how many users do you expect to have on version 1.0 of your site that are on the Thai Buddhist calendar? In other words, maybe you should leave this for version 2 (or 22).
I guess it just cuts to the heart of the problem. If the Web app is built for a kind of Agile / Start-up model, where you do not even know if takes up at at all, you probably shouldn't waste time on asking these questions. On the other hand, if it is part of an established business, where all the marketing and project plans tell that in half a year there should exist versions for China, Thailand, Israel, etc., than it all starts to look differenly. It the app is for some travel reservation, for example, then the post-factum inclusion of a new calendar may need a re-write of half of GUIs, back-end interfaces, storage, etc., so you may be better off starting to investigate this at the very beginning. You may even consider J2EE a better platform ;P : in Java, a date is almost a blob - all operations are implemented by calendars :rolleyes: .
-
PCSpectra wrote:
Gary Kirkham wrote: I didn't know there was a such thing as a buddhist calendar...interesting Neither...it is interesting and yet frustrating.
Frustrating like having to support inches in design software because the US won't go metric... :mad:
I never though I'd say this but "Go USA!" May those feet and inches never succumb to foreign centimetres. As Rupert Brooke almost said "If I should die, think only this of me: that there's some corner of a foreign field that is for ever measured in square yards"
My new favourite phrase - "misdirected leisure activity"
-
I never though I'd say this but "Go USA!" May those feet and inches never succumb to foreign centimetres. As Rupert Brooke almost said "If I should die, think only this of me: that there's some corner of a foreign field that is for ever measured in square yards"
My new favourite phrase - "misdirected leisure activity"
Yeah, those powers of ten are soooo hard to get your head around. The UK should have done a 100% transition when we went metric. Personally I use whatever system I feel like using at the time for lengths, but litres and kilos are still largely a mystery...
-
Yeah, those powers of ten are soooo hard to get your head around. The UK should have done a 100% transition when we went metric. Personally I use whatever system I feel like using at the time for lengths, but litres and kilos are still largely a mystery...
I just can't visualise how long something is in cm or how much it might feel like in kg. I always simultaneously convert when my kids start talking foreign to me.
My new favourite phrase - "misdirected leisure activity"
-
I just can't visualise how long something is in cm or how much it might feel like in kg. I always simultaneously convert when my kids start talking foreign to me.
My new favourite phrase - "misdirected leisure activity"
Maybe you're just really, really old... ;)
-
Maybe you're just really, really old... ;)
Seeing as I got very excited about "The Kings of Glam" being on BBC2 the other night, recording it and then subjecting the kids to snippets of T-Rex, Bowie and Slade then I have no alternative but plead guilty as charged.
My new favourite phrase - "misdirected leisure activity"
-
Your (and mine) english calendar is a solar calendar. Earth takes 365.25 days to revolve around the sun. so, english calendar has 365 days every year with a leap year every 4 years. But at some places, particularly chinese and other mid-east countries, calendar based on motion of moon around earth is used. Since days between Full moon to full moon is about 29.5 days, so the months are alternatively 29 & 30. The fascinating thing is if according to lunar calendar you are born on 1st july, 2000 then next year in 2001, you will not celebrate your birthday on 1st july but on the day when the position of moon will be similar to what it was on 1st july, 2000. This way you can delay your birthday party until you get money in your pocket. ;P (and you thought smart people use solar calendar!) I did some work on this in my app. Check the following links...may be of some use to you. http://www.hko.gov.hk/gts/time/conversion.htm http://en.wikipedia.org/wiki/Chinese\_calendar BTW if your application is in dot Net, then there's a class which does all the calculations for you for converting between solar and lunar calendar. you need to dig into msdn for that.
theCPkid wrote:
365.25 days to revolve
365.24218967 days actually... ;) ;) "There is a leap year every year whose number is perfectly divisible by four - except for years which are both divisible by 100 and not divisible by 400. The second part of the rule effects century years. For example; the century years 1600 and 2000 are leap years, but the century years 1700, 1800, and 1900 are not. This means that three times out of every four hundred years there are eight years between leap years."
_________________________ Asu no koto o ieba, tenjo de nezumi ga warau. Talk about things of tomorrow and the mice in the ceiling laugh. (Japanese Proverb) John Andrew Holmes "It is well to remember that the entire universe, with one trifling exception, is composed of others."
-
In the world of web applications I happen to think it's very important to at least work towards developing truly internationalized applications...not just language lookup which is trivial, nor locale formatting, such as currency, etc... I've have read up on much of the caveats when building culturally aware applications and made some interesting/annoying discoveries. :P Only annoying because it just means more work, but I digress. In Thailand, they use a Buddisht calander as I understand. And this calendar has 385 days per year (or some greater than Julian/Gregorian or which ever it is I use). I always thought some values were undisputable, such as seconds in a minute. Is it safe to assume then: 60 seconds = 1 minute 60 minutes = 1 hour 24 hours = 1 day Is it only the the number of days per month that changes from calendar to calendar? How does the Buddist calandar have 385 days on leap years if it's a universally accepted that there are 24 hours in a day or 60 seconds in a minute? If I make the above assumptions, which all my calculations be culturally accurate? I use a the ICU libraries to perform most date calculations and apparently they are aware of the caveats and adjust accoridingly... But to deal with fragments on a more atomic scale like above, will these work undoughtedly? Cheers, Alex
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
Time is relative. War is peace. Freedom is slavery. Ignorance is strength. :)
“Acer, Gateway, and eMachines are the same company now. Great! Now we just need a really big toilet, and we can get rid of all three at once.”
-
PCSpectra wrote:
How does the Buddist calandar have 385 days on leap years
If it has 385 days, it obviously bears no relation to the rotation of the earth, or the seasons. So why would it need to have a leap year at all ?
Christian Graus Driven to the arms of OSX by Vista.
Actually it does correspond to the earth's rotation so it does need a leap year and here's why and how: Buddist Calendar[^]
CQ de W5ALT
Walt Fair, Jr., P. E. Comport Computing Specializing in Technical Engineering Software
-
PCSpectra wrote:
Gary Kirkham wrote: I didn't know there was a such thing as a buddhist calendar...interesting Neither...it is interesting and yet frustrating.
Frustrating like having to support inches in design software because the US won't go metric... :mad:
Steve_Harris wrote:
Frustrating like having to support inches in design software because the US won't go metric
Hah, I'm bilingual...improvise, adapt and overcome.
Gary Kirkham Forever Forgiven and Alive in the Spirit "Truly, truly, I say to you, he who hears My word, and believes Him who sent Me, has eternal life, and does not come into judgment, but has passed out of death into life. Me blog, You read
-
In the world of web applications I happen to think it's very important to at least work towards developing truly internationalized applications...not just language lookup which is trivial, nor locale formatting, such as currency, etc... I've have read up on much of the caveats when building culturally aware applications and made some interesting/annoying discoveries. :P Only annoying because it just means more work, but I digress. In Thailand, they use a Buddisht calander as I understand. And this calendar has 385 days per year (or some greater than Julian/Gregorian or which ever it is I use). I always thought some values were undisputable, such as seconds in a minute. Is it safe to assume then: 60 seconds = 1 minute 60 minutes = 1 hour 24 hours = 1 day Is it only the the number of days per month that changes from calendar to calendar? How does the Buddist calandar have 385 days on leap years if it's a universally accepted that there are 24 hours in a day or 60 seconds in a minute? If I make the above assumptions, which all my calculations be culturally accurate? I use a the ICU libraries to perform most date calculations and apparently they are aware of the caveats and adjust accoridingly... But to deal with fragments on a more atomic scale like above, will these work undoughtedly? Cheers, Alex
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
I've been writing fully internationalized and localized apps (that even have a search feature, those who know, know the hassle behind *that*) sold globally for almost a decade now and we have customers in Thailand and I can assure you that the Buddhist calendar is not a consideration. It's good that you are using the internationalization libraries, I've yet to see anywhere that doesn't accept the standard minute, hour and day and in my experience it's always safe to use your own formulas for calculating anything < 1 day that doesn't involve a date. Thai is always one of the clssic test cases for internationalization and localization as it's one of the few written languages in the world that has no concept of whitespace.
"It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson
-
In the world of web applications I happen to think it's very important to at least work towards developing truly internationalized applications...not just language lookup which is trivial, nor locale formatting, such as currency, etc... I've have read up on much of the caveats when building culturally aware applications and made some interesting/annoying discoveries. :P Only annoying because it just means more work, but I digress. In Thailand, they use a Buddisht calander as I understand. And this calendar has 385 days per year (or some greater than Julian/Gregorian or which ever it is I use). I always thought some values were undisputable, such as seconds in a minute. Is it safe to assume then: 60 seconds = 1 minute 60 minutes = 1 hour 24 hours = 1 day Is it only the the number of days per month that changes from calendar to calendar? How does the Buddist calandar have 385 days on leap years if it's a universally accepted that there are 24 hours in a day or 60 seconds in a minute? If I make the above assumptions, which all my calculations be culturally accurate? I use a the ICU libraries to perform most date calculations and apparently they are aware of the caveats and adjust accoridingly... But to deal with fragments on a more atomic scale like above, will these work undoughtedly? Cheers, Alex
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
While your goal of "developing truly internationalized applications" is admirable, it may way not be necessary to take it as far as you might be planning. The example of the calendar in Thailand is something that I suggest you not bother with doing. Or at least not in the earliest versions as macu also suggested. I've spent much time in Thailand over the past several years and can assure you that everyone there is completely comfortable using the same calendar that we use in "the west." Any business that is transacted uses it. Any Thai person using the Internet will be able to cope with it. I realize this is just one example of problems with internationalized applications, but it seems to me core functionality that the majority of your users need should be your primary focus. Later versions can add features that a minority of users might need. Good luck!
BDF People don't mind being mean; but they never want to be ridiculous. -- Moliere
-
Just out of interest, how many users do you expect to have on version 1.0 of your site that are on the Thai Buddhist calendar? In other words, maybe you should leave this for version 2 (or 22).
It would be more work than it's worth if I do not compensate for this factor in the inital design. In all honesty once I go behoynd ju7st simple langugae translation it's a simple matter of implementing locale aware 'types' in essence. Seeing as the framework already accomodates this and the inclusion of UCI makes almost all culrutal assumptioned for me, it's (for all intents and purposes) complete and finished. I created a timestamp class which reflects UNIX epoch however as an object that is queried with getters like:
time.getMinutes()
I wonder if the internationally acceptable to make the calculation based on 60 seconds in a minute
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
-
I've been writing fully internationalized and localized apps (that even have a search feature, those who know, know the hassle behind *that*) sold globally for almost a decade now and we have customers in Thailand and I can assure you that the Buddhist calendar is not a consideration. It's good that you are using the internationalization libraries, I've yet to see anywhere that doesn't accept the standard minute, hour and day and in my experience it's always safe to use your own formulas for calculating anything < 1 day that doesn't involve a date. Thai is always one of the clssic test cases for internationalization and localization as it's one of the few written languages in the world that has no concept of whitespace.
"It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson
John C wrote:
Thai is always one of the clssic test cases for internationalization and localization as it's one of the few written languages in the world that has no concept of whitespace.
It certainly makes design more interesting accomodating all those cultural biases, etc. It's required me to drastically change the design of much of my application. I am certainly going to use ICU librarues as they do a majority of the work, especially when it comes ot things like collation, etc... I'm actually just builiding in the support for it so if the app ever requires it it's a simple matter of setting the locale and translating the language strings, as opposed to the atlernative which is writting all parts of software that are locally biased.
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
-
While your goal of "developing truly internationalized applications" is admirable, it may way not be necessary to take it as far as you might be planning. The example of the calendar in Thailand is something that I suggest you not bother with doing. Or at least not in the earliest versions as macu also suggested. I've spent much time in Thailand over the past several years and can assure you that everyone there is completely comfortable using the same calendar that we use in "the west." Any business that is transacted uses it. Any Thai person using the Internet will be able to cope with it. I realize this is just one example of problems with internationalized applications, but it seems to me core functionality that the majority of your users need should be your primary focus. Later versions can add features that a minority of users might need. Good luck!
BDF People don't mind being mean; but they never want to be ridiculous. -- Moliere
Big Daddy Farang wrote:
While your goal of "developing truly internationalized applications" is admirable, it may way not be necessary to take it as far as you might be planning. The example of the calendar in Thailand is something that I suggest you not bother with doing. Or at least not in the earliest versions as macu also suggested.
The sooner to remove cultural biases the better off you are from a design stand point. It makes conversion much easier, just setting the locale and being done with it, as opposed to refactoring all culturally ignorant parts of your applicaiton (which there will be lots of -- even in simple applications).
Big Daddy Farang wrote:
I've spent much time in Thailand over the past several years and can assure you that everyone there is completely comfortable using the same calendar that we use in "the west." Any business that is transacted uses it. Any Thai person using the Internet will be able to cope with it.
Thing is...while I am not disagreeing...ICU libraries do all that for me which is why I asked about the simple calcluation of 60 seconds in a minute, etc. As it's a single custom class to deal with time give as a timestamp.
Big Daddy Farang wrote:
I realize this is just one example of problems with internationalized applications, but it seems to me core functionality that the majority of your users need should be your primary focus. Later versions can add features that a minority of users might need.
See above; The sooner it gets designed into the core application/framework the better off I am. Cheers, Alex
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
-
John C wrote:
Thai is always one of the clssic test cases for internationalization and localization as it's one of the few written languages in the world that has no concept of whitespace.
It certainly makes design more interesting accomodating all those cultural biases, etc. It's required me to drastically change the design of much of my application. I am certainly going to use ICU librarues as they do a majority of the work, especially when it comes ot things like collation, etc... I'm actually just builiding in the support for it so if the app ever requires it it's a simple matter of setting the locale and translating the language strings, as opposed to the atlernative which is writting all parts of software that are locally biased.
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
PCSpectra wrote:
so if the app ever requires it it's a simple matter
Heh heh. You'd be surprised what will come up out of the blue no matter how much you pre-anticipate it, but it's good to know how to do it and it's good to have the app prepared for it, it's something everyone should go through at least once, it will make them better developers.
"It's so simple to be wise. Just think of something stupid to say and then don't say it." -Sam Levenson
-
I just can't visualise how long something is in cm or how much it might feel like in kg. I always simultaneously convert when my kids start talking foreign to me.
My new favourite phrase - "misdirected leisure activity"
A centemeter is a fingernail (width). I'll agree on kg.
-
In the world of web applications I happen to think it's very important to at least work towards developing truly internationalized applications...not just language lookup which is trivial, nor locale formatting, such as currency, etc... I've have read up on much of the caveats when building culturally aware applications and made some interesting/annoying discoveries. :P Only annoying because it just means more work, but I digress. In Thailand, they use a Buddisht calander as I understand. And this calendar has 385 days per year (or some greater than Julian/Gregorian or which ever it is I use). I always thought some values were undisputable, such as seconds in a minute. Is it safe to assume then: 60 seconds = 1 minute 60 minutes = 1 hour 24 hours = 1 day Is it only the the number of days per month that changes from calendar to calendar? How does the Buddist calandar have 385 days on leap years if it's a universally accepted that there are 24 hours in a day or 60 seconds in a minute? If I make the above assumptions, which all my calculations be culturally accurate? I use a the ICU libraries to perform most date calculations and apparently they are aware of the caveats and adjust accoridingly... But to deal with fragments on a more atomic scale like above, will these work undoughtedly? Cheers, Alex
Blog Entry: 7 Software development best practices to make you more effective and productive PCSpectra :: Professional, Affordable PHP Programming, Web Development and Documentation
As a Thai, I can say that u don't have to worry about the Buddhist calendar. We use the same calendar as yours and we use metric system. :) The Buddhist calendar is only use for finding religious national holidays. I am very sure that most of Thais don't know how to change date to Buddhist calendar. ;P