Archive for the 'programancy' Category Page 2 of 4



want to try a Software Engineering interview question?

One of the cool things about big software companies, such as Microsoft or Google, is the interview process. Interviews are done by actual engineering people (along with HR) and candidates are asked direct engineering, problem solving and coding questions. For people who are really into hands-on coding and who like problem solving, this is great. Plus, it gives you an exact idea about the candidates ability. A lot of the things you need to know about how you code can be easily seen in front of a blackboard. (If you’re really interested in how this works, I will reccomend getting a copy of “Programming interviews exposed”)

So, I was thinking about posting a couple of the interview questions I use here at Google… BUT that would put it way too easy for some of the people I’ll interview next month during the European CodeJam finals so… let’s see if this one suits you anyway.

Important: normally interview questions have several “levels of complexity” just to give a better idea of how the candidate’s “expertise”. This means that normally there are several ways of solving them, and that in many cases it’s not expected from you to get all the question up to the end…

Go on and give this one a try! And post your solutions and questions in the comments! I promise to give feedback in all of them! }:D

Balloons and bullets
Step 1: I have N balloons and a bullet in 3-D space. Write some code to determine if the bullet is inside of any balloon, if yes, which balloons. Balloons may overlap. For simplicity, assume all balloons are spheres of radius 1 and the bullet is a point.
Step 2: Now I have K bullets, can you enhance the algorithm so the complexity is better than O(NK)?
Step 3: Now the balloons have different radius. How does the solution change?
Step 4: Now I have only one bullet but it’s a tracing bullet that can change direction, and it’s moving through K positions. I want to know if the bullet hit any balloons. How does the solution change?

Tips: Step 1 is what is expected from a college hire. Step 2 is for a good college hire. Step 3 is expected from a good coder with knowledge of some advanced data structures. Step 4 is for people who actually have good mathematical/geometry skills.

a 2d version of our problem: Pang
a 2d version of our problem: Pang! };D

visual basic for Java!

Yup, not joking! This is not another catchy header to get your attention, it is really one of the new thingies that have been presented at JavaOne in San Francisco… sounds weird, doesn’t it?

Well, apart of the oddity, there are a lot of interesting things coming in the next version of Java that are definitely worth a look! Check the roadmap for the Java Technologies in the keynote slides and find more in the rest of the sessions or watching the webcasts.

google european code jam 2006

It’s in the news! (but not in Slashdot or Barrapunto, how strange!) Google is going to launch the CodeJam competition in Europe too!

Read more about European CodeJam 2006 here!

I think everybody should give this a try and here are my reasons why:

  • First, it is a cool event, and you get to meet and compete with some interesting people all around Europe
  • Second, it might give you extra reasons for sharpening your coding skills, review those data structures basics or algorithms or get that extra notch of excellence in your language of choice (Java, C++ or C#)
  • Third, prizes are good, and finalists will get the opportunity to travel to Google Dublin for the finals
  • And last but not least: I’m going to be in Dublin interviewing the finalists, so apart from a good prize, you might end up with a job offer from Google! };P

Registration is already opened, so start warming up in the TopCoder arena and… good luck!

google code jam 2006 logo

robert pike on software (inexistent) evolution

Today, reading some past mailing lists items, I’ve come to this link of a Rob Pike’s talk about software and how it hasn’t changed much in the last years:

http://herpolhode.com/rob/utah2000.pdf

I think it’s worth to give a good read (also has some references to Linux and Microsoft, so it’s good material for worthless discussions };D) and also to consider it was written in 2000, and things haven’t really changed that much… at least not yet };P

P.S. did you know that Rob Pike works in Google? I didn’t! (but was happy to find so!)

requeteMVP!

Look at the mail I’ve just received:

Estimado/a Ricardo Varela:
¡Felicidades y bienvenido al Microsoft MVP Program!
En su condición de receptor de la designación Most Valuable Professional (MVP) de este año, usted se incorpora a un grupo excepcional de personas pertenecientes a comunidades técnicas en línea y fuera de línea de todo el mundo que comparten con otros su pasión por los productos y las tecnologías de Microsoft. Microsoft® felicita a todos los MVP por promover el espíritu comunitario y ayudar a otras
personas a desarrollar su pleno potencial a través de la tecnología. Para obtener más información sobre el MVP Program, visite: www.microsoft.com/mvp.

What does that mean? Basically, that I’ve been renewed as Visual C# MVP for this year! Yohoo! }:D

happy April’s Fool day!

One of the best I’ve seen lately:

SQL On Rails

Some other you might want to check:

Tecnología y Género: el caso del Software Libre (o no)

Bueno, me perdí la posibilidad de publicar esto el 8 de Marzo, aprovechando el día Internacional de la Mujer, pero pondré como excusa que estaba en un avión de camino a un meeting de IEEE en San Francisco (donde estoy hasta hoy mismo). Aún así voy a copiar para este post el rimbombante título con el que se presentó en la Open Source World Conference de Málaga la mesa redonda que supuestamente iba a abordar las cuestiones que preocupaban a las mujeres sobre la tecnología y cómo el software libre podía ayudar a eliminar las barreras invisibles que causan esa desorbitante proporción mujeres-hombres en las profesiones técnicas y, más específicamente, en Informática. (Hay más ejemplos de esto últimamente, como la mesa de Motorola en el 3GSM) Así de paso aprovechamos que no comenté nada tampoco el pasado 23 de Febrero, que fue (en USA) el día de “Muéstrale a una chica lo que es la Ingeniería”.

Bueno, en primer lugar me gustaría hacer una pequeña reflexión de abogado del diablo: ¿alguien más se pregunta por qué no hay plataformas similares para exigir la paridad de sexos en otras profesiones, algunas de las cuales tienen porcentajes manifiestamente superiores al que se da en carreras técnicas? (siendo, por ejemplo, que el 94% de profesionales médicas de asistencia al parto son mujeres, según datos del Instituto de la Mujer)

Una vez dicho esto, paso a comentar que la mesa redonda a la que nos referíamos anteriormente me pareció un despropósito, bastante desorganizado y que definitivamente no lograba hacer llegar su mensaje al público. A vista de pájaro, la sesión consistió en 6 señoritas/señoras explicando lo mal que estaba el país, sin referencia ninguna al software libre ni cosa que se le pareciera. Estimada Montse Boix y resto de colaboradoras: los asistentes YA SABÍAN que la cosa está muy mal en términos del papel de las mujeres en tecnología. Lo que estaban esperando además era alguna aportación positiva, alguna orientación sobre cómo mejorar la situación, quizá incluso alguna referencia al software libre (por aquello del tema de la charla), para hacer un poco más llevadera la sesión catastrofista y destructiva en que se convirtió la susodicha mesa redonda.

Por suerte estaban por allí Pia Waugh y Fabianne Baveldi salvando un poco el tipo y dando a conocer un modo más fresco (y mucho más efectivo para mi gusto que la crítica sin base) de lograr igualdad entre hombres y mujeres… ¡e incluso hablando de software libre! Recordando la posibilidad que brinda el modelo abierto de desarrollo, basado en meritocracia, de incluir a gente de cualquier sexo indistintamente… Porque aquí, como en la vida, importa lo que haces y no lo que eres

panorama de la mesa redonda

Por cierto, Montse participó en otra sesión sobre integración más tarde ese día, en la que SI mencionó al software libre para algo: el software libre te permite cambiar los letreros de “Usuario” que aparecen en las cajitas de login de las aplicaciones por “Usuario/Usuaria”, dándo así la neutralidad de género que deseamos. ¡Un poco de por favor, que ya somos mayores! Vale que un sistema de localización abierto te permite personalizar las etiquetas y mensajes, pero eso se puede hacer con soft propietario también. En serio, la organización podía haberse ahorrado el dinero de invitar a algunos de los ponentes… con un poco de suerte el año que viene la cosa irá muchísmo mejor, ¿no? };D

NOTA: de acuerdo a la web de la organización, próximamente estarán disponibles los vídeos de esta y otras sesiones en la página de las jornadas

del.icio.us bookmarks on firefox

Aren’t you just in love with del.icio.us? All that cool social bookmarking and tagging thingie plus being one of the most useful tools out there makes it really something that deserves trying (and it’s free!)

For those of you who are not using it yet, I hope you consider giving it a try. And for those of you who are already in love with it, just one quick tip: you’ve probably added the typical “post to del.icio.us” and “my del.icio.us” buttons to your bookmarks bar, but if you’re a firefox user you have a couple better options available. You could try one of the many del.icio.us plugins to get more functionality inside your browser OR you could simply use Firefox Live Bookmark feature to import your RSS feed of links from del.icio.us, to have them handy. Simply create a new bookmark using http://del.icio.us/rss/yourusername as the feed url and you’ll have them all listed as a folder in your bookmark toolbar

del.icio.us live bookmark

There you are, all your links just a click apart! Hope you like the idea! }:)

el blog del mal

Chema Alonso, crá de los crases y compañero de aventuras en la Tierra Media, me avisa que nuestro amigo el informático en el lado del mal estrena blog: http://elladodelmal.blogspot.com/. Ya sabéis, si alguna vez habéis estado tentados de pensar que Microsoft no es tan malo, ¡no os lo perdáis! };D

Por cierto, que aprovecho para comentar que el resto de miembros de la Comunidad del Anillo, es decir el reverendo Padre Parada y un servidor estaremos la próxima semana en el Foro Tecnología y Sociedad en Panticosa, Huesca. Si alguno anda por allí y quiere pasarse a saludarnos y/o venirse de fiesta, ya sabéis que somos chicos fáciles (de encontrar, quiero decir)

ieee rss feeds & new website

Back in september, IEEE RAB approved the electronic format availability of both IEEE Spectrum (our all-fields magazine) and IEEE Potentials (our magazine for students) to ALL IEEE members, in the case of Potentials, and to everybody out there in the case of IEEE Spectrum. This is definitely good, but what is even cooler is that now you can also syndicate news to your favourite RSS aggregator to help keep you updated.

In case you’re interested, here are the RSS links:

Quite a jump in the modern world, isn’t it? };P

To add even more spice to the mix, the new look for the IEEE website has recently being launched. Take a look and let webmasters know what you think!

Update: somebody wanted me to point out, for those who might be interested, that ACM Crossroads, the ACM magazine for students, also has an open online version.

spectrum, potentials and the new ieee website