Mathieu Tozer's Dev Blog

Cocoa, the development of Words, and other software projects (including those dang assessment tasks).




Words First Compilation!

0 comments


I know I know... but just you wait! I'm pretty excited. Core data is FABULOUS. NO CODE!!!


Write anywhere?

0 comments

The theory is that i can write anywhere. But there is the issue of
carrying around the intructions to write anywhere. But CAN I?


Core Data

0 comments

I just took a tutorial in Core Data.

I think it's wonderful! I'm going to use it to implement words.


I AM A COMPUTER SCIENTIST

0 comments

It's like I need to scrape that out on a chalk board a thousand times. It hink it's because I'm caught in an identity bind. I kind of tell eveyone off handedly what I'm studying since I think it's kinf of embarrasing. But all that is set to change witn my new personal ID policy.
Here's teh facts.
1. I AM genuinely interested in computers and software.
2. I do a lot of reading about new and old technologies. I desire to understand as much about it as I can.
3. I am interested in working with Apple technologies, or for a company that does work in it.
4. I don't want to do something musty and stale like 'implementing networks' in a buisiness environment. I want to work for a dynamic, creative company that makes cool applications, whether it be software or hardware.
5. I love gadgets. I would like to be part of a team that delivers something truly amazing to the world in terms of computing.
6. I want to prove myself to the developer community , as it exists, of my presence by producting something that they take notice of.
7. Doing this, I think it will take me places.
8. So YES I AM interested and excited about comuters and I WANT to work with them.

Simple. I can't belive I didn't know this before. Well it's funny because I came back from Japan to learn about computers, and I learnt about them. I have been for how many years? And why the doubts? The image> Fuck that. The image you create is the one you are. Don't think about it too much, especially at the professional level.

But let's say nothing implements over the summer - it's OK! I'll still be studying and the exercise will not have been for nothing.

I really think I'm quite lucky. The way I stoll out of my house, through the station, onto phillippa's for a warm welcome, then back to sit in the sun with nature, listening to music, and then just slipping onto the train casually to take me where I need to go. Off to university.



I'm going through the product guide finding similar programs to words
for examples of what and what not to do. I guess you could call this
Market Research. I spose I want everything I see to be crap, but alas
this is not likely to be so. Let's take a look.

JLearnIt


Word Translator X


Master Spell (with real voices)



Look What I've Discovered!

0 comments

A COMMUNITY!

Wow

Ahh Anyway they have this scholarship thing. Even if I don't end up getting anything from it at least I know there is a community there.

"finding ways to harness the iPod (and associated peripherals) for educational purposes."

Anyway:
2 December 2005 - Grant Applications Close
  • 16 December 2005 - Grants Announced.

<<<<<<Could this be a 'final project'?>>>>>>>>>

I also discovered a bi-yearly journal called 'Wheels' which had some interesting articles:
About popularity of English in Korea and the learning of it on mobile devices, and about mobile learning in general.
About podcasting and iLecture
About the inadequacies of newsgroups (who uses them) and how RSS and Blogs are preferred technologies.

I was also excited to learn about how the people from Melbourne Uni went to some conferences in the USA, and also about how there were all these people in Australia thinking about all this stuff! I mean it brings the whole Mac thing so much closer to home it's great.


Ultimate Gadget Scribbles

0 comments


Words Component Scribbles

0 comments



ePaper implementation ideas.

Large, canvas sized pieces that can disply realistic, high def images (in full colour).

A new way of enjoying art. You listen to an internet broadcast file (the art version of a podcast) which is a series, a gallery, if you will, compile repleat with music to go alongside. Possible limitations are with the depictions of texture that would not come through on the ePaper (at close inspection). Can't you see them in art galleries, and in shop windows? So grand, elegant, impressive. People would think it's a hanging until it moved.
A new form of painting could evolve where the image changes slightly, and then back again, so that the trees sway in the breeze, or the stars sparkle.
Marketed not only a general purpose information display, branded as ∫ integration, but with the art displaying software and subscription devices available. Show stats on the spread of art around the world...

Could be the centre computer in any household. All other PCs draw their computing power from this machine? Everyone in the family has their own termnial but uses the same power?
An old an outmoded idea. What if Timmy and Sally decide to update their photo libraries both at once? Not when processing power is relatively cheap...

New Technologies Research Analysist

I would like to do technology marketing. Gadgets! nihonde?

But still very good nonetheless.
Could also be used as a general information display. Newssheets, for example. It's basically limitless.

Smaller ePaper devices in a newton / Librie / clié / Sigma book cross. Extremely light weight, durable, thus portable, and useful. Greyscale would almost be sufficient if that was all that was available. I have already written about this.

I bet Antonio Vivaldi never thought that one day his entire Four Seasons compilation would fit inside a small white box. (In fact it fits into a space even smaller than that).

I would like a place in Toyko. Imagine if I were getting about all time time, flying here, flying there. I know, it's the kind of jet setter job eveyone thinks they would like to do, but hell, it's a great way to see the world. So in theory if that's the thing that I want to do, then I have to think on a global level. Doing so will engage me with it.
Thus the importance behind involving the whole world with whatever software I intend to make. Have it localised into many different languages. Developing it as a product that is kind of a receptacle for everyone's words, whatever they are, on everyone's Mac. Now that's the philosophy I should be designing for.
While in reality not eveyone is going to want to use it, they should be able to relate, be able to know why it might be useful.


Localisation

0 comments

Translators typically localize the pieces of the user interface all
at once, adjusting graphic elements to account for changes in string
lengths. In any medium-size or large application, it’s usually a good
idea to put each window or panel (that is, dialog) in its own nib
file. This practice not only makes it possible to load the user
interface lazily (that is, to load pieces as they’re used), but it
also permits localization to progress in more incremental steps. It’s
also a good idea to put the menus of the application in a separate
nib file.


Involving Target Users...

0 comments

だってもしこれを読めたら使えるでしょう??!!

//この次は秘密にしてもらいたいからよろしくお
願いします。//

芳郎へ
一つ聞きたいことがある。今ソフトを作っている。

このソフトは言語を勉強している人に対応するスフ
トで、ワードリストを自動的に整理する上、テキス
トそのままアプリケーションに入れると、そのテキ
ストの中に自分が見た事がない/分からない言葉を
自動的に調べてくれたり、ワードリストにする。そ
して、他の「例文」をインターネット/パソコンの
中に探してくれたりするソフトなの。他にいろんな
言葉学習機能もあるけど(例えばiPodに送れる機
能)、基本的な機能はそんな感じ。

アップルのウーザーインタフェースガイドがあるん
だけど、それに書いたのは、デザインするときに、
対応するユーザーと話したり見せたりしないと行け
ない。だからそうしたいと思っています。

芳郎はどうでしょうか。君はフランス語も英語も日
本語も勉強したことがあるでしょう。そしてマック
使ってる。だからもしこういうソフトがあれば使い
ますか?ややこしい辞書で調べる必要もない。コン
ピュータが自分の分かっている言葉(結局に理解し
ない言葉)を調べて便利なリストに入れて、そして
そのリストをプリントでも、メールで携帯に送って
も、iPodで言葉を自分で声にした言葉をランドムで
聞いてもできる。(実はこのように日本語を覚え
た)。

ウエッブサイトを読んでいるときに難しい単語が出
てくるよね、時々。日本語、英語でもわからない言
葉。もちろん辞書(または電子辞書)を引いて調べ
られる。が、ほとんど一回だけ見て、覚えないか
ら、紙辞書を使ってる場合、紙(やパソコンのノー
ト)に単語リストを作り始める。時々電子辞書の場
合、歴史機能はついている。だけど、自然に読んで
いたコンテキストがその言葉に付いて残らない。だ
から一週間後(一分後?)もうどこでどう言う風に
その言葉見たのかな???と思うでしょうか。私が
作りたいソフトは、検索歴史だけではなく、いろん
な情報がその言葉に保存する。すれば、面白い機能
ができる。(今深く言えないけど、芳郎は想像でき
るかな?)そしてソフトをチェンジする必要もな
い。サービスメンユーにあるOS Xサービスを使って
(それかショートカットを使うー例:ctrl shift ~)言
葉やテキストを俺のアプリケーションに送れる。

一応プロトタウプ(試しのソフト)ができてから見
せます。いろんな提供も芳郎から願いますからよろ
しくお願いします。

マシュー(アップルマックOS X 開発者)


Step 1: Create New Project

0 comments

Conceptually I must understand what I have just created at the push of a button. It's a program in it's own right, s bundle of technologies all poised and ready to be given the customisation that will make it Words.

Using the documentation I will learn how to use the tools that will create Words.

Communicating With Other Applications

Cocoa gives an application several ways to exchange information with other applications:

  • Pasteboards. Pasteboards are a global facility for sharing information among applications. Applications can use the pasteboards to hold data that the user has cut or copied and may paste into another application. Each pasteboard is similar to OS 9’s Clipboard, but much more versatile, with multiple pasteboards accepting multiple data types.
  • Services. Any application can access the services provided by another application, based on the type of selected data (such as text). An application can also provide services to other applications such as encryption, language translation, or record-fetching.
  • Drag and Drop. If your application implements the proper protocol, users can drag objects to and from the interfaces of other applications.
Localisation

Cocoa provides API and tool support for localizing the strings, images, sounds, and nib files that are part of an application. Localizing allows you to easily tailor your application to multiple languages without significant overhead.


Printing

With just a simple Interface Builder procedure, Cocoa automates simple printing of views that contain text or graphics. When a user clicks the control, an appropriate dialog helps to configure the print process. The output is WYSIWYG.

Several Application Kit classes give you greater control over the printing of documents and forms, including features such as pagination and page orientation.

Help

You can very easily create context-sensitive help—knows as “tool tips”—for your application using the Info window in Interface Builder. After you’ve entered the tool tip text, the user can then hold the cursor over an object on the application’s interface and a small window will appear containing concise information on the object.

Plug-in Architecture

You can design your application so that users can incorporate new modules later on. For example, a drawing program could have a tools palette: pencil, brush, eraser, and so on. You could create a new tool and have users install it. When the application is next started, this tool appears in the palette.


-- from Developing Coca Objective-C Applications: A Tutorial - Developer Documentation 92002, 2003 Apple Computer, Inc)


Naming: Integrated Words

0 comments

Integration Words
Words Integration

Words. It's simple ワードズ 日本語の翻訳もまあまあ
シンプルかな?
インテグレションワードズ

It has meaning as well. Integrate Words.

It's not just Word, it's Words. Plenty Plural Words.

Learn more Words.



Skim parts 1 and 2. They have been covered and used before.

I will create a project of type "Cocoa Application":

'An application, based on the Cocoa framework, that is written in
Objective-C and relies on nib files to define its graphical interface.'

Design Tools should be read and understood. I am not familiar with
this yet.

Later features in this document can be left for later.

Might I use a single project with a few different targets. One for
the main program, and one for the parser (developed separately as a
plugin)

Xcode tracks certain settings at the project level. These settings
include your choice of version control system, the version of Mac OS
X to develop for, and the build configurations available in the
project. You can view and modify project-level settings in the
project inspector, shown in the following figure.

'The design tools are the part of Xcode that is responsible for
modeling the classes in your application and the entities that
represent your data. Modeling tools can give you a better conceptual
overview of your project than raw XML or a mass of source files. You
can customize the view to see the information you need most. Xcode
provides two types of design tools: class modeling and data modeling,
also referred to as entity-relationship modeling.

Xcode offers three tools—one to model classes and two to model data.'

I'm currently up to Part II: Design Tools, Class Modeling with Xcode
Design Tools.

--

For more information:

For an introduction to the developer tools available for Mac OS X,
see Getting Started With Tools.

For an introduction to Mac OS X system architecture and system
technologies, see Mac OS X Technology Overview.

To see a full list of the tools available with Xcode Tools, see Mac
OS X Developer Tools in Mac OS X Technology Overview.

To learn more about the types of software you can create for Mac OS
X, see Software Development Overview in Mac OS X Technology Overview.

To learn more about the Mac OS X standard user interface, see Apple
Human Interface Guidelines.

For a tutorial introduction to Xcode, see Xcode Quick Tour Guide.


+RSS | dev blog | Portfolio

About me

My status

Last posts

  • my del.icio.us
  • my flickr