Entries Tagged as ''

GSM transport evolution

By Per Ola Andersson, Håkan Asp, Aldo Bolle, Harry Leino, Peter Seybolt and Richard Swardh From Ericsson Review No. 1, 2007.

The success of GSM to date has been nothing short of sensational. What is more, its future continues to hold great promise. However, two important challenges must yet be resolved to make GSM the mobile communications system for the “next billion users” and to guarantee the commercial success of its mobile data services: focus on low total cost of ownership (TCO), and deployment of enhanced GPRS (EGPRS) in every network. In addressing these challenges, GSM transport or backhaul constitutes one very interesting and dynamic area of development.

gsm_transport_web_Ericsson

Saving time – and money – with semantic design

Whether designing the sleek body of a new Ferrari or laying out a mould for its brake casings, engineers spend an inordinate amount of time searching through design data. A new semantic engineering environment developed by European researchers promises to save time and boost productivity.

The pioneering system, which hit the market late last year, offers a more flexible, scalable and user-orientated means of managing design data and product lifecycle information than the mostly monolithic solutions currently on the market.

By incorporating a semantic layer into a Product Lifecycle Management (PLM) system and enabling users to visualise products, components and materials in virtual reality, the new development promises to save engineers and designers precious time, reduce costs and raise productivity.

“Many companies today still store information on paper files, while others keep key design data in obscure databases and repositories where it is either hard to find or cannot be accessed at all… Engineers still have to pick up the phone to call colleagues who worked on past projects to obtain information that should be readily accessible to them,” explains Mikel Renteria, the director of technology at Semantic Systems in Spain. “It takes a lot of time and reduces productivity,” he notes.

Pioneering semantic PLM

Working in the EU-funded SevenPro project, Renteria led a team of researchers, engineers and test users from five European countries who sought to solve these problems by developing what they believe is the first semantic PLM system.

By annotating data semantically, the meaning of the information can be understood by computers as well as humans, making it easier to find and establish connections with other information even if it is stored in distributed files and databases across a network. The SevenPro semantic environment relies on an adaptable ontology, a vocabulary of related concepts used to assign meaning to data and describe the relationships between data items.

“One of the major advantages of our system over the off-the-shelf PLM systems currently available is that it is highly customisable. We do not use a set ontology but rather adapt the ontology to the products, services and design processes in use at a particular company,” Renteria explains.

In effect, companies do not have to adapt their processes to the system, but rather the system will adapt to a company’s processes by creating and maintaining its own semantic model.

Much of the data is annotated with semantic information automatically when added to a company database or network, including designers’ comments and references, the project team notes. So when it comes to searching for information, complex queries such as “find door parts made of aluminium alloy 7072 that have a crash test report associated to them” will return results that more closely match the needs of the user.

The system works with different types of data and can interoperate with pre-installed Computer Aided Design (CAD) and Enterprise Resource Planning (ERP) software. Toolkits were developed to automatically extract knowledge hidden implicitly in CAD files or corporate databases.

Virtual reality for better workflow

The SevenPro team also looked at the way information is presented to users, creating a virtual reality environment that makes it easier for designers and engineers to visualise products, parts and components, and to see the connections between them.

“It makes it possible to graphically browse all the data associated with a certain product,” Renteria says, “[which] makes data and data associations easier to identify and greatly improves the workflow.”

Those features were highly prized at two companies that tested the system as part of the SevenPro project and are now using it commercially: Italdesign Giugiaro, an Italian car designer that has worked for Ferrari, Lamborghini and BMW, among others, and Fundiciones del Estanda, a Spanish metal foundry.

“They are two very different companies, and their success in using the SevenPro system proves that it is useful to companies of all sizes in many different engineering and industrial sectors,” Renteria says.

Fundiciones del Estanda highlighted, for example, that the SevenPro system offered “important strengths” and “functionalities” that were not available in the company’s pre-existing design environment.

“This project offers [Estanda] the possibility to make an important jump in management with these new technologies… [It provides] a lot of advantages with respect to the present situation,” the company notes. Italdesign Giugiaro similarly praised the advantages of the system, with a survey of test users from different engineering and design departments giving most of the SevenPro platform’s features high marks.

Based on that success, the SevenPro team has started marketing a commercial version of the platform called Repcon KRP and is looking for partners and investors to develop the product further.

Renteria says the scalability of the platform means that a commercial installation is affordable for both large companies and small and medium enterprises (SMEs) and offers a rapid return on investment.

SevenPro received funding under the ICT strand of the EU’s Sixth Framework Programme.


From:ICT Results

MAC OSX 10.5 – Leopard: Move windows to Spaces

Either you can view all Spaces  pressing F8, then using your mouse to drag and drop the desired window to the desire Space location.

Or you have to drag to a screen edge, wait, then drop.

Or if you like to use your keyboard, here’s a fast way to do it:

  1. Using your mouse, click and hold the window you want to move to another Space.
  2. While still holding your mouse button down, use your Spaces keyboard shortcut to move to the desired Space. This is usually done by pressing Control and one of the arrow keys.

The window you are holding will be moving with you as you change your Spaces. Once you reach your destination, release the mouse button.

You can also use this method to move the window directly to a numbered space.  Just select the window, then press Control-1, -2, -3, etc.

But if you want to setup your shortcuts, you can do it clicking in System Preferences, Exposé & Spaces and then in Spaces:

Spaces in MAC OSX

Spaces in MAC OSX

Automatic wordpress upgrade error: Error: There was an error connecting to the server, Please verify the settings are correct.

Try to give www-data permission in wordpress directory:

cd /yourwordpress_dir/
sudo chown -R www-data:www-data *

Print Screen using Mac OS X

Just use any of the following commands to place a shiny new PDF on your desktop.

CMD + Shift + 3
This will take a screenshot of your entire screen.

CMD + Shift + 4
This will bring up a selection tool so you can make a rectangular screenshot of a certain area.

CMD + Shift + 4 + Space Bar

This will turn your cursor into a tiny camera. Use this camera to take a picture of the Dock, a menu, or a window and it will crop the background automatically for the resulting image.

If you hold down the Control key during and of the above commands the image gets copied to your clipboard, ready to paste, rather than creating a PDF on your desktop.

Model-View-Controller (MVC)

Problem: The Model-View-Controller (MVC) is a commonly used and powerful architecture for GUIs. How does it work?

Dean Helman wrote (an extract from Objective Toolkit Pro whitepaper):

The MVC paradigm is a way of breaking an application, or even just a piece of an application’s interface, into three parts: the model, the view, and the controller. MVC was originally developed to map the traditional input, processing, output roles into the GUI realm:

Input –> Processing –> Output
Controller –> Model –> View

The user input, the modeling of the external world, and the visual feedback to the user are separated and handled by model, viewport and controller objects. The controller interprets mouse and keyboard inputs from the user and maps these user actions into commands that are sent to the model and/or viewport to effect the appropriate change. The model manages one or more data elements, responds to queries about its state, and responds to instructions to change state. The viewport manages a rectangular area of the display and is responsible for presenting data to the user through a combination of graphics and text.

[...]

[The model is used] to manage information and notify observers when that information changes. [...] It contains only data and functionality that are related by a common purpose [...]. If you need to model two groups of unrelated data and functionality, you create two separate models.

[...] a model encapsulates more than just data and functions that operate on it. A model is meant to serve as a computational approximation or abstraction of some real world process or system. It captures not only the state of a process or system, but how the system works. This makes it very easy to use real-world modeling techniques in defining your models. For example, you could define a model that bridges your computational back-end with your GUI front-end. In this scenario, the model wraps and abstracts the functionality of a computation engine or hardware system and acts as a liaison requesting the real services of the system it models.

[...]

The [view or viewport] is responsible for mapping graphics onto a device. A viewport typically has a one to one correspondence with a display surface and knows how to render to it. A viewport attaches to a model and renders its contents to the display surface. In addition, when the model changes, the viewport automatically redraws the affected part of the image to reflect those changes. [...] there can be multiple viewports onto the same model and each of these viewports can render the contents of the model to a different display surface.

[...]

[A viewport] may be a composite viewport containing several sub-views, which may themselves contain several sub-views.

[...]

A controller is the means by which the user interacts with the application. A controller accepts input from the user and instructs the model and viewport to perform actions based on that input. In effect, the controller is responsible for mapping end-user action to application response. For example, if the user clicks the mouse button or chooses a menu item, the controller is responsible for determining how the application should respond.

[...]

The model, viewport and controller are intimately related and in constant contact. Therefore, they must reference each other. The picture below illustrates the basic Model-View-Controller relationship:

Model View Controller

Model View Controller

The figure above shows the basic lines of communication among the model, viewport and controller. In this figure, the model points to the viewport, which allows it to send the viewport weakly-typed notifications of change. Of course, the model’s viewport pointer is only a base class pointer; the model should know nothing about the kind of viewports which observe it. By contrast, the viewport knows exactly what kind of model it observes. The viewport also has a strongly-typed pointer to the model, allowing it to call any of the model’s functions. In addition, the viewport also has a pointer to the controller, but it should not call functions in the controller aside from those defined in the base class. The reason is you may want to swap out one controller for another, so you’ll need to keep the dependencies minimal. The controller has pointers to both the model and the viewport and knows the type of both. Since the controller defines the behavior of the triad, it must know the type of both the model and the viewport in order to translate user input into application response.

More info:

Ralph Johnson, Model-View-Controller as an Aggregate Design Pattern

Steve Burbeck, How to use Model-View-Controller

Object Arts, Model View Controller

ootips.org

Abraham Lincoln On Software Slavery: Let My Software Go!

From: Maddog

Reseting Ubuntu gnome panel

sudo debconf gnome-panel

This is not a permanent solution.

To permanently enable your default panel configuration enter the following commands in the terminal sequentially.

gconftool –recursive-unset /apps/panel
rm -rf ~/.gconf/apps/panel
pkill gnome-panel