
﻿WEBVTT
Kind: captions
Language: es

00:00:00.000 --> 00:00:16.560
Hola, y bienvenidos a un nuevo episodio de Apple Coding Daily.

00:00:16.560 --> 00:00:22.640
Hoy vamos a comentar una noticia que desde luego tiene que ver directamente con el desarrollo,

00:00:22.640 --> 00:00:27.720
y es que se ha hecho público, aunque Apple no lo ha confirmado de manera oficial para

00:00:27.720 --> 00:00:36.240
avaliar, que Apple habría parado en las últimas semanas, durante al menos una o dos semanas,

00:00:36.240 --> 00:00:43.160
el desarrollo de todas las nuevas versiones de los sistemas de iPhone, iPad, Apple Watch,

00:00:43.160 --> 00:00:49.320
incluso el desarrollo evolutivo del nuevo sistema operativo Vision OS.

00:00:49.320 --> 00:00:55.040
¿Por qué habría hecho esto Apple? Pues bien, llevamos hablando durante mucho tiempo

00:00:55.040 --> 00:01:04.280
de la calidad del software. Llevamos hablando que Apple este año ha querido, con los lanzamientos

00:01:04.280 --> 00:01:11.680
presentados en la WWDC, abarcar demasiado, y su equipo de cerca de 10.000 desarrolladores

00:01:11.680 --> 00:01:18.760
no le ha dado abasto a poder dejar todo lo suficientemente pulido y lo suficientemente

00:01:18.760 --> 00:01:23.920
bien terminado. Tenemos que tener en cuenta que todo este equipo se dedica a todos los

00:01:23.920 --> 00:01:30.040
sistemas y a todo lo que tiene que ver, incluso el software profesional como Logic, que acaba

00:01:30.040 --> 00:01:35.280
de recibir una versión mayor de actualización, o Final Cut Pro, que la recibirá a finales

00:01:35.280 --> 00:01:44.440
de noviembre. Por lo tanto, es una decisión que ha tomado Apple para que toda esa calidad

00:01:44.440 --> 00:01:51.000
del software que no han conseguido alcanzar, pueda alcanzarse con un esfuerzo extra de

00:01:51.000 --> 00:01:55.840
todo el equipo de desarrollo, por lo que han parado todos los proyectos para centrarse

00:01:55.840 --> 00:02:02.000
durante unas semanas en resolver todos los problemas que tienen y en, digamos, alterar

00:02:02.000 --> 00:02:08.960
o añadir nuevas estrategias a la gestión, que créanme, es un auténtico caos, de todos

00:02:08.960 --> 00:02:28.480
sus sistemas operativos y software. Vamos a comentarlo.

00:02:28.480 --> 00:02:33.060
Pero antes, lógicamente, tenemos que hablar de nuestro colaborador, que no es otro que

00:02:33.060 --> 00:02:38.940
BP. Porque ya sé que la mayoría de los oyentes de Apple Coding Daily ya tenéis la tarjeta

00:02:38.940 --> 00:02:45.320
MiBP, con la que seguro habéis ahorrado mucho dinero todos los meses de los últimos años

00:02:45.320 --> 00:02:50.840
gracias a sus ofertas, y más que os vais a ahorrar. Porque ahora la tarjeta MiBP es

00:02:50.840 --> 00:02:57.700
mucho mejor, y todos vamos a BPEAR al máximo este otoño. BPEAR es sinónimo de hacer las

00:02:57.700 --> 00:03:03.320
cosas sencillas, rápidas, de ahorrar más, de obtener más ventajas, de sacar lo mejor

00:03:03.320 --> 00:03:09.040
del programa MiBP en todo momento. ¿Te vas el fin de descansar? Pues BPEAS. ¿Este mes

00:03:09.040 --> 00:03:15.200
tienes que utilizar mucho el coche? Aprovecha para BPEAR. Nunca es un mal momento para BPEAR.

00:03:15.200 --> 00:03:20.680
Abres tu aplicación MiBP en tu móvil y al repostar BPEAS y consigues grandes ventajas

00:03:20.680 --> 00:03:26.600
como ahorrar hasta 20 céntimos por litro repostando carburante BP Ultimate con tecnología

00:03:26.600 --> 00:03:32.240
Active, lo mejor para tu motor y para tu bolsillo. Y si no tienes aún la aplicación, pues no

00:03:32.240 --> 00:03:37.320
sé qué esperas. Descárgatela gratis buscando MiBP en tu tienda de aplicaciones, que espero

00:03:37.320 --> 00:03:44.960
que sea el App Store, y descubre toda la información en mibp.es. Muchísimas gracias, como siempre

00:03:44.960 --> 00:04:05.360
a MiBP por colaborar con Apple Coding Daily.

00:04:05.360 --> 00:04:10.180
Todos sabemos que una de las características que históricamente han diferenciado a Apple

00:04:10.180 --> 00:04:15.040
no solo es la innovación en el hardware, también es la calidad del software. Pero

00:04:15.040 --> 00:04:22.680
también sabemos que en los últimos años Apple ha tenido bastantes valles de problemas

00:04:22.680 --> 00:04:28.860
con el software, bastantes lanzamientos que no han tenido la calidad esperada, como pasó

00:04:28.860 --> 00:04:34.840
con iOS 14, como ha pasado con ciertos elementos, como ha pasado ahora con iOS 17. Cuando se

00:04:34.840 --> 00:04:40.200
intenta abarcar demasiado y hacer demasiadas cosas que son excesivamente complejas, es

00:04:40.200 --> 00:04:46.720
muy complicado que todo esté con la calidad que se necesita, sobre todo cuando estamos

00:04:46.720 --> 00:04:52.480
teniendo que cumplir una serie de fechas concretas, que en este caso la fecha clave es el lanzamiento

00:04:52.480 --> 00:04:58.720
de los nuevos iPhones en septiembre. Ya en el año 2018, Apple cambió completamente

00:04:58.720 --> 00:05:06.780
la estrategia y dio poder al equipo de software para poder parar cualquier tipo de lanzamiento.

00:05:06.780 --> 00:05:12.660
Todo eso se ha visto reflejado un montón de veces. Por ejemplo, me viene a la memoria

00:05:12.660 --> 00:05:20.820
el lanzamiento de la versión de Deep Fusion de las fotografías, o por ejemplo la aplicación

00:05:20.820 --> 00:05:29.520
de diario que va a salir ahora en iOS 17.2. Hay ciertas funcionalidades, ciertos elementos

00:05:29.520 --> 00:05:35.020
que siempre se han retrasado, que se han dejado para mucho más adelante, cosas que han tardado

00:05:35.020 --> 00:05:41.200
más en llegar a pesar de haberse anunciado, simplemente porque desde el año 2018 el equipo

00:05:41.200 --> 00:05:47.880
de software tiene la libertad de poder elegir el retraso de ciertas funcionalidades cuando

00:05:47.880 --> 00:05:53.880
considera que no están terminadas para que puedan ser usadas por el gran público.

00:05:53.880 --> 00:05:59.760
Claro, todo esto está genial hasta que llega una fecha de entrega como la de los iPhones.

00:05:59.760 --> 00:06:04.280
En ese momento, el software tiene que cumplir la fecha de entrega y punto, ya no tiene esa

00:06:04.280 --> 00:06:11.000
libertad y eso es algo que por desgracia nunca va a poder tener, salvo que el marketing permita

00:06:11.000 --> 00:06:15.540
que se retrasen esas fechas, que fue lo que yo comenté en pasados episodios que Apple

00:06:15.540 --> 00:06:20.080
debería haber retrasado el lanzamiento de los iPhones a octubre no a septiembre y nos

00:06:20.080 --> 00:06:24.800
hubiéramos ahorrado muchísimos problemas que han dejado muy mal a la marca. Parece

00:06:24.800 --> 00:06:28.240
ser que en Apple han sido conscientes de este problema y por lo tanto por eso han decidido

00:06:28.240 --> 00:06:35.400
parar todos los lanzamientos porque, lo creáis o no, a fecha de noviembre ya tienen una versión

00:06:35.400 --> 00:06:40.800
cerrada de lo que será el sistema operativo de los grandes dispositivos para junio, de

00:06:40.800 --> 00:06:45.980
la próxima gran versión. Claro, esto es un problema porque todos los que nos dedicamos

00:06:45.980 --> 00:06:50.940
al desarrollo de software en Apple sabemos que cuando Apple lanza algo en septiembre

00:06:50.940 --> 00:06:57.600
ya no vuelve a tocarlo, difícilmente vuelve a tocar algo o lo arregla o le añade cosas

00:06:57.600 --> 00:07:01.560
porque en el momento en el que lanza una versión mayor todos sus esfuerzos se dedican en la

00:07:01.560 --> 00:07:07.300
siguiente versión mayor y no deja, y esto es un error de facto, no deja a demasiada

00:07:07.300 --> 00:07:13.420
gente pendiente de corregir las versiones anteriores. Hay que entender que todo lo que

00:07:13.420 --> 00:07:17.640
tienen las versiones anteriores tiene que incorporarse a las versiones nuevas, por lo

00:07:17.640 --> 00:07:21.620
que si tienes a dos equipos trabajando en paralelo mientras estos hacen una versión

00:07:21.620 --> 00:07:26.900
nueva que parte está basada en la antigua y estos siguen evolucionando la antigua, conseguir

00:07:26.900 --> 00:07:31.660
la unión de cada uno de estos elementos es muy difícil a nivel organizativo. Para conseguir

00:07:31.660 --> 00:07:37.740
esto Apple ya en el año 2018-2019 lo que hizo fue añadir una estrategia llamada los

00:07:37.740 --> 00:07:43.340
Feature Flags que son banderas dentro del sistema, es una opción oculta dentro de los

00:07:43.340 --> 00:07:48.640
ajustes del iPhone para el iPhone y el resto de dispositivos para los desarrolladores dentro

00:07:48.640 --> 00:07:54.980
de Apple que permite activar o desactivar ciertas funciones dedicadas o realizadas por

00:07:54.980 --> 00:07:59.680
distintos equipos. Como todos sabemos o podemos entender en un sistema operativo hay un montón

00:07:59.680 --> 00:08:03.860
de funciones que están relacionadas unas con las otras por lo que es normal que el

00:08:03.860 --> 00:08:10.300
equipo B haga algo que estropee algo que tiene que ver con lo que ha hecho el equipo A porque

00:08:10.300 --> 00:08:16.460
están relacionadas las funcionalidades de ambos. Los Feature Flags permiten crear una

00:08:16.460 --> 00:08:22.980
versión específica donde la función B que aún está sin terminar pueda estar activada

00:08:22.980 --> 00:08:28.740
y por lo tanto ajustar la B para que luego A pueda corregir los errores que puedan estar

00:08:28.740 --> 00:08:35.100
derivados de esa interacción y que por otro lado pueda haber otra versión del sistema

00:08:35.100 --> 00:08:41.700
operativo en otro branch diferente en otro en otro hilo de lo que es la gestión de control

00:08:41.700 --> 00:08:48.780
de código vale lo que es el source control pues se pueda tener para el equipo A lo que

00:08:48.780 --> 00:08:54.380
es el sistema operativo sólo con su funcionalidad A pero la B deshabilitada porque la B estropea

00:08:54.380 --> 00:08:59.460
su trabajo y hasta que la B no esté no van a poder activarla y cuando la B esté activada

00:08:59.460 --> 00:09:07.060
ahora se ha metido una nueva una nueva metodología dentro de Apple llamada The Pact que lo que

00:09:07.060 --> 00:09:12.020
hace es algo así como el pacto que lo que hace es que cuando B activa su funcionalidad

00:09:12.020 --> 00:09:17.340
pero eso puede provocar errores en lo que ha hecho A porque insisto las funciones están

00:09:17.340 --> 00:09:23.540
relacionadas A se compromete a corregir todos esos errores A se compromete a corregir todo

00:09:23.540 --> 00:09:28.220
lo que puede haber provocado B o también que en esto es lo que suele pasar en muchas

00:09:28.220 --> 00:09:33.860
ocasiones lo que es el provocar lo que se conoce técnicamente como una regresión una

00:09:33.860 --> 00:09:40.480
regresión es cuando yo tengo un error en el software lo corrijo y resulta que por vicisitudes

00:09:40.480 --> 00:09:47.020
de componentes secundarios cuando esos componentes secundarios cambian el error que se corrigió

00:09:47.020 --> 00:09:51.820
vuelve a aparecer eso sería una regresión pero ya no sólo eso también Apple tienen

00:09:51.820 --> 00:09:58.060
problema de la enorme cantidad de errores que ha ido heredando versión a versión de

00:09:58.060 --> 00:10:02.860
cosas que pertenecen a hace cuatro versiones de Scope o tres versiones de macOS y que no

00:10:02.860 --> 00:10:08.020
terminan de corregirse por ejemplo a mí ahora en el Mac me está sucediendo que un error

00:10:08.020 --> 00:10:13.140
que sucedió hace dos o tres versiones del Mac ha vuelto a aparecer que es el de que

00:10:13.140 --> 00:10:20.260
los vídeos cuando el monitor está en HDR hace como flashes de brillo vale porque patata

00:10:20.260 --> 00:10:24.660
o sea no tiene y eso es algo que ya le pasó hace tiempo que Apple lo corrigió y ahora

00:10:24.660 --> 00:10:30.460
ha vuelto a suceder porque suceden estas cosas porque estamos hablando de 10 mil personas

00:10:30.460 --> 00:10:36.820
tocando código a la vez y por lo tanto organizarlos es algo clave y Apple sabe perfectamente

00:10:36.820 --> 00:10:43.820
que la calidad de su software es algo que es primario que es algo que es lo más importante

00:10:43.820 --> 00:10:50.220
para el desarrollo de todo lo que está haciendo por lo tanto han parado todas las nuevas versiones

00:10:50.220 --> 00:10:58.260
de watchOS 11 de iOS 18 de macOS 15 creo que tocaría ya todo eso lo han detenido y se

00:10:58.260 --> 00:11:04.860
han centrado durante unas semanas en corregir el software si todos recordamos en la época

00:11:04.860 --> 00:11:09.220
en la que Apple no tenía tanta responsabilidad y ni siquiera existía el iPhone y por lo

00:11:09.220 --> 00:11:16.860
tanto eran equipos mucho más limitados todos recordaremos una gran postal una gran imagen

00:11:16.860 --> 00:11:23.860
donde aparecía Craig Federighi presentando Snow Leopard donde ponía cero new features

00:11:23.860 --> 00:11:32.500
cero nuevas funciones porque porque Snow Leopard se dedicó la versión 10.6 del sistema operativo

00:11:32.500 --> 00:11:37.940
no tuvo ninguna función nueva se dedicó solo a arreglar y a dejar limpio todo lo que

00:11:37.940 --> 00:11:43.780
había a limpiar la casa se diría básicamente pues bien Apple no llega a ese nivel ahora

00:11:43.780 --> 00:11:49.580
porque obviamente no pueden aunque ojalá lo hicieran yo para mí si sacaran un nuevo

00:11:49.580 --> 00:11:54.620
iOS 18 etcétera etcétera en el que lo único nuevo fuera obviamente lo que están hablando

00:11:54.620 --> 00:11:59.220
de la guía generativa que eso ya lo deben de estar integrando pero que prácticamente

00:11:59.220 --> 00:12:04.540
no haya nuevas funciones porque lo importante sea corregir todo lo que hay y sean los mayores

00:12:04.540 --> 00:12:10.820
esfuerzos para dejarlo todo hiper limpio para mí sería clave no podemos olvidar y de hecho

00:12:10.820 --> 00:12:16.540
a ver yo como formador para mí la calidad del software es algo muy importante nosotros

00:12:16.540 --> 00:12:22.740
este próximo año comenzamos la cuarta edición que se dice pronto la verdad que para mí

00:12:22.740 --> 00:12:28.620
es increíble pensar que ya es la cuarta edición de nuestro Swift full stack bootcamp y una

00:12:28.620 --> 00:12:35.140
de las cosas que nosotros le decimos a los alumnos es que con la enorme cantidad de tiempo

00:12:35.140 --> 00:12:43.500
que se dedica a buscar información a buscar soluciones para errores etcétera lo ideal

00:12:43.500 --> 00:12:48.660
es que haya una buena formación que esté detrás dándote las claves porque si al final

00:12:48.660 --> 00:12:53.260
estás perdiendo una hora hora y media dos horas en buscar información para corregir

00:12:53.260 --> 00:12:58.620
tus para hacer bien tu trabajo y para que no tenga errores pues obvia o para corregir

00:12:58.620 --> 00:13:02.740
los que te pueden aparecer pues obviamente eso hace que seas poco práctico hay que ir

00:13:02.740 --> 00:13:08.940
directo a la fuente y sobre todo y principalmente y es a lo que voy hay que primar la calidad

00:13:08.940 --> 00:13:15.380
del código hay que ir hacia la excelencia es como decía Steve Jobs Steve Jobs le daba

00:13:15.380 --> 00:13:20.440
tanta importancia a lo que se veía fuera del Mac como que el Mac por dentro que nunca

00:13:20.440 --> 00:13:25.740
podía abrirse salvo por la gente que lo reparaba estuviera perfectamente ordenado que fuera

00:13:25.740 --> 00:13:29.840
igual de bonito por dentro que por fuera a pesar de que la mayoría de la gente nunca

00:13:29.840 --> 00:13:34.580
iba a ver el Mac por dentro pero tener un código de calidad tener un código bien hecho

00:13:34.580 --> 00:13:38.620
saber lo que estás haciendo y llegar a lo que se conoce técnicamente como el state

00:13:38.620 --> 00:13:44.460
of the art de la calidad del código es clave para que este tipo de cosas como la que les

00:13:44.460 --> 00:13:49.700
está sucediendo a Apple no sucedan y también una cosa que también enseñamos en este Swift

00:13:49.700 --> 00:13:54.600
Full Stack son las técnicas los métodos de organización del código para que estos

00:13:54.600 --> 00:13:59.620
proyectos estos macro proyectos donde podemos estar involucrados se puedan organizar de

00:13:59.620 --> 00:14:06.220
la mejor manera para intentar evitar estos problemas de interacción cuando muchos desarrolladores

00:14:06.220 --> 00:14:11.220
o ciertos desarrolladores trabajan unos con el código de otro o se interrelacionan en

00:14:11.220 --> 00:14:17.260
esa funcionalidad desde luego es algo que creo que es clave si estáis interesados en

00:14:17.260 --> 00:14:24.580
él en el bootcamp podéis acceder fácilmente a coding.academy barra bootcamp y ahí tenéis

00:14:24.580 --> 00:14:30.820
toda la información que además este año tenemos las bastantes posibilidades de financiación

00:14:30.820 --> 00:14:35.540
que pueden hacer que bueno pues a lo mejor podéis permitir incluso podéis pagar hasta

00:14:35.540 --> 00:14:41.680
en 36 meses ya que bueno pues en ese sentido creo que estamos lo que queremos es que la

00:14:41.680 --> 00:14:48.740
mayor cantidad de gente pueda llegar a tener este tipo de formaciones y pueda hacer eso

00:14:48.740 --> 00:14:54.540
lo que justo lo que le estamos pidiendo a Apple calidad de código calidad de software que

00:14:54.540 --> 00:15:01.820
se centren en que todo tenga la mejor calidad posible así que bueno bien por Apple aplaudimos

00:15:01.820 --> 00:15:07.600
esperemos que sea suficiente y veamos en las próximas versiones si realmente esto llega

00:15:07.600 --> 00:15:12.420
a buen puerto que espero que sí y podamos empezar a disfrutar de un software carente

00:15:12.420 --> 00:15:25.100
de problemas

00:15:25.100 --> 00:15:29.480
y poco más la verdad que todo lo que tiene que ver con la ingeniería del software muchas

00:15:29.480 --> 00:15:35.580
veces a ver y yo el primero nos quejamos amargamente hay que ver que Apple que no hace que Microsoft

00:15:35.580 --> 00:15:39.340
hay que ver qué error que tiene que cómo pueden entrar que consiste no se han dado

00:15:39.340 --> 00:15:45.780
cuenta de esto de lo otro vosotros os imagináis lo que es 10.000 desarrolladores tocando todos

00:15:45.780 --> 00:15:51.380
en gran parte las mismas partes de código porque los sistemas operativos de Apple todos

00:15:51.380 --> 00:15:58.100
tienen el mismo núcleo y las librerías son todas las mismas para iOS para iPad para Mac

00:15:58.100 --> 00:16:03.940
etcétera por lo que imaginar la enorme cantidad o sea ya no es cuestión de aplicar técnicas

00:16:03.940 --> 00:16:09.500
de desarrollo conducido por pruebas etcétera es tener toda una organización de control

00:16:09.500 --> 00:16:16.360
de calidad del software que sea pues eso brutal y que además añada el que cuando se detecte

00:16:16.360 --> 00:16:22.340
un nuevo error pues se corrija lo antes posible y se le dé prioridad por encima de dejarlo

00:16:22.340 --> 00:16:28.300
ahí y que ya se irá corrigiendo cuando sea vale es un cambio de estrategia que insisto

00:16:28.300 --> 00:16:36.060
aplaudo dentro de Apple y que espero que vaya mejorando cada vez más y que para mí cristalizaría

00:16:36.060 --> 00:16:42.980
en el momento en el que 1 software tenga poder para decidir retrasar lanzamientos de marketing

00:16:42.980 --> 00:16:51.020
y 2 cuando software tenga la capacidad de poder llegar a una versión a un año donde

00:16:51.020 --> 00:16:56.860
lancen nueva versión y esa nueva versión o no sea una versión mayor o sea una versión

00:16:56.860 --> 00:17:01.820
mayor que no tenga nuevas funciones o casi no tenga nuevas funciones sino que simplemente

00:17:01.820 --> 00:17:07.300
sea limpiar la casa arreglar dejarlo todo bonito dejarlo todo bien poner esfuerzos en

00:17:07.300 --> 00:17:13.660
que el software que al final es lo que manejamos esté lo mejor posible supongo que todos los

00:17:13.660 --> 00:17:19.060
que nos oís estaréis muy de acuerdo con esto así que poco más muchísimas gracias como

00:17:19.060 --> 00:17:24.380
siempre si os ha gustado el episodio por favor compartirlo dejarnos una nota suscribiros

00:17:24.380 --> 00:17:30.580
si lo veis en youtube un like un comentario etcétera todo eso nos ayuda a ir subiendo

00:17:30.580 --> 00:17:36.220
a ir siendo más bueno pues que la gente nos escuche más y luego pues bueno pues puede

00:17:36.220 --> 00:17:40.620
ser que a la gente le guste lo que estamos haciendo y bueno pues es un poco difundir

00:17:40.620 --> 00:17:47.220
no la palabra de jobs así que pues ese sería el tema poco más muchísimas gracias y nos

00:17:47.220 --> 00:17:54.780
oímos pronto siempre y cuando jobs quiera hasta entonces un saludo y God Apple Coding.