معهد غودارد منظومة - gcm - الفوركس


لقد قمت بتحميل جيس غم النموذج الثاني 1 وبدأت في التحقيق فيه. وبما أن جميع التوقعات المستقبلية أغو تعتمد على نتائج من هذه النماذج قررت أنني حقا بحاجة إلى فهم كيفية عملهم. النموذج مكتوب بشكل رئيسي في فورتران (قبل فورتران 77) وهو ما يرام لي كما برمجتها في فورتران لأكثر من 20 عاما. يتم التعليق بشكل جيد إلى حد ما رمز ولكن ليست منظمة بشكل جيد بشكل جيد ومليء البيانات غوتو. هذا هو نموذج غسم ناسا 8217s الذي كان يستخدم حتى عام 2000 تقريبا عندما كان يفرز من قبل أحدث إي النموذج الذي يستخدم شبكة أكثر دقة. ومع ذلك النموذج الثاني هو الوحيد الذي لديك فرصة واقعية لتشغيل على جهاز كمبيوتر سطح المكتب. شبكة 3-D تغطي الأرض يتكون من 821510 درجة لات الشبكة لون مع 9 طبقات الغلاف الجوي، 2 طبقات غروندوسان. يتم نمذجة الطاقة الشمسية المدخلات باستخدام المعلمات المدارية مع قيمة واحدة ل تسي (أكثر على هذا في وظيفة المقبل) مع فاصل زمني من 1 يوم. ويستخدم النقل الإشعاعي من خلال الغلاف الجوي ملامح لبخار السحب، وثاني أكسيد الكربون، وما إلى ذلك، كما يتضمن نموذجا للبياضات المحيطية والأرضية. يتم تلخيص الكثير من هذا بشكل جيد في أطروحة (الماجستير) وجدت على شبكة الإنترنت من قبل ميليسا كيلي. للحصول على ما يصل وتشغيل سريع ومع ذلك، وأنا تحميل الواجهة الأمامية واجهة المستخدم الرسومية وتحليل نظام إدغم صدر عن جامعة كولومبيا. هذه الحزمة تأتي جاهزة لتشغيل وعدد محدود من المعلمات المدخلات التي يمكن ضبطها مع الرسومات الحرة وتحليل البرمجيات (إيفا) المدرجة. وبدون ذلك سوف يستغرق شهورا لفهم كيفية إعداد وتشغيل النموذج مع المعلمات المدخلات الصحيحة. يتكون الرمز من حوالي 15000 خط من فورتان، وهو كبير ولكن ليس مفرطا. التعامل مع السحب وردود الفعل المياه هو هاردويرد في التعليمات البرمجية ولا يمكن السيطرة عليها من قبل المعلمات المدخلات في إدغم كان أول نموذج ركض لاختبار النظام واحدة من النماذج المعبأة مسبقا القادمة مع إدغم دعا 8220Doubled CO28221. هذا النموذج 8220measures8221 حساسية المناخ لمضاعفة CO2. ويبدأ من مناخ عام 1958 وبتركيزات ثاني أكسيد الكربون 314.9 جزء في المليون ثم يدخل مضاعفة لحظية من مستويات ثاني أكسيد الكربون إلى 629.8 جزء في المليون. ثم يتفاعل النموذج مع التأثير الإشعاعي الإضافي الذي يمضي قدما إلى 2100. ويفسر ارتفاع درجة الحرارة الكلية على أنها حساسية المناخ التوازن. لقد قمت بتثبيت نموذج على ماك مصغرة تشغيل OS10.6.8 مع معالج 2.4GHZ Core2 و 2 غبيتس من الذاكرة. استغرقت محاكاة نموذج كامل 33 ساعة لإكمال، ولدت أكثر من 2 غبيتس من الناتج. تظهر استجابة درجة الحرارة السطحية الكلية الناتجة في الشكل 1. الشكل 1: استجابة درجة حرارة الهواء السطحية بعد مضاعفة مستويات ثاني أكسيد الكربون في عام 1958 ويمكن استخلاص الاستنتاجات التالية. 1 - الحساسية المناخية للنموذج الثاني هي 4.4 درجة مئوية إلى مضاعفة ثاني أكسيد الكربون 2 - من المتوقع أن يكون معدل القصور الذاتي للنظام المناخي للأرض 8217 في التغيير المفاجئ في الإجبار نحو 50 عاما في النموذج الثاني في تقرير الفريق الحكومي الدولي المعني بتغير المناخ لعام 2001، من الحساسيات المناخية لمجموعة من النماذج ما بين 2.2 و 5.6 درجة مئوية. وبالتالي فإن نموذج مغيس إي في الطرف العلوي من هذا النطاق. وبحلول الفريق الحكومي الدولي المعني بتغير المناخ 2007، انخفض نطاق الحساسيات إلى 2.1 إلى 4.4 درجة. (ج) عدم اليقين الرئيسي هو شروط التغذية المرتدة للمياه، ولا سيما السحب. ويكون نموذج السحابة المستعمل في الأسلوب إي مبسطا: - يتم تعيين كل نقطة شبكة لتكون غائمة أو واضحة استنادا إلى ما إذا كان الرقم العشوائي أكبر من التشبع المحسوب. ومن المسلم به عموما أن النموذج الثاني من النموذج جيس يبالغ في تقدير حساسية المناخ. النموذج الوحيد مع حساسية أكبر هو أن مكتب المملكة المتحدة ميت. وبدون التغذية المرتدة فإن النموذج سيؤدي إلى ارتفاع درجة حرارة 1.2 درجة مئوية إلى مضاعفة ثاني أكسيد الكربون. بالطبع أود أن تشغيل هذا النموذج حتى مع ردود فعل سلبية ردود الفعل المياه، ولكنني don8217t نرى حتى الآن كيف نفعل ذلك. وقد يكون من الضروري تعديل الشفرة. 1. هانسن، J. G. راسل، D. ريند، P. ستون، A. لاسيس، S. ليبيدف، R. Redy، أند L. ترافيس، 1983: كفاءة النماذج ثلاثية الأبعاد العالمية للدراسات المناخية: النموذجان الأول والثاني. M. ويثر Rev. 111، 609-662، دوي: 10.11751520-0493 (1983) 111 2. مسح لمعدلات حساسية المناخ والاستجابة في إدغم، مليسا كيلي، كلية ديكنسون، كارلايل با شارك هذا الموضوع: من غاري ستراند، مهندس برمجيات في المركز الوطني لبحوث الغلاف الجوي (نكار) التعليق على التدقيق المناخي: كمهندس برمجيات، وأنا أعلم أن برنامج المناخ المناخ don8217t تلبية أفضل المعايير المتاحة. جعلت W8217ve الكثير جدا من التقدم، ولكن we8217ve لا يزال تماما طرق للذهاب. I8217ll يقول. ناسا نموذج جيس E مكتوبة على بعض من أسوأ فورتران الترميز من أي وقت مضى ينظر إليه هو التحدي حتى الحصول على التوالي. ناسا جيستمب هو أسوأ من ذلك. ومع ذلك، فإن حكومتنا لديها تشريعات قيد النظر بشكل كبير استنادا إلى مخرجات النموذج التي بدأها جيم هانسن. وكان خطابه الذي ألقاه في عام 1988 أمام الكونغرس يستند تماما إلى السيناريوهات النموذجية. هل نريد حقا المؤتمر لاتخاذ قرارات الضرائب تريليون دولار اليوم استنادا إلى 8220 البرمجيات التي don8217t تلبية أفضل المعايير المتاحة. 8221 هناك 8217s أكثر. تعليقات ستيف ماكنتاير: غاري، إذا كان هذا هو ما تعتقد، ثم كان ينبغي أن يكون قد ذكرت في AR4 الهيئة الحكومية الدولية المعنية بتغير المناخ حتى يمكن للسياسيين تقديم المشورة وفقا لذلك. ولا أذكر أنني أرى أي تعليق من هذا القبيل في الوثيقة AR4 8211 ولا لهذه المسألة في أي تعليقات تتعلق بالاستعراض. 8230and إلى الجزء الثاني من التعليق: إذا كنا نستطيع إقناع وكالات التمويل إلى تحسين تمويل تطوير البرمجيات، والتدريب المستمر، ثم we8217ll يكون في طريقنا. it8217s قاسية قليلا، إمهو، لتعيين اللوم لمهندسي البرمجيات عندما are8217re أقل من اللازم والعمل الزائد. بو-هوو. مئات الملايين من الدولارات، إن لم يتم إنفاق المليارات من الدولارات. ولعل الأموال يجب أن تندرج في الميزانية بشكل مختلف، ولكن المنظمة البحرية الدولية هناك 8217s قدرا وافرا من التمويل العام لديها مهندسو برمجيات مناسبون. ربما يجب أن يكون هناك بعض التوحيد في صناعة نموذج المناخ، كما هو الحال في صناعة السيارات. إذا كان أي من النماذج لديها هندسة البرمجيات الكافية، ثم ماذا عن اغلاق طوعا واحدة من النماذج واقتراح أن يتم إعادة توزيع الموارد بحيث يتم تحسين نماذج أفضل I8217m لا يجعل هذا كوتو لاختيار على غاري ستراند، على الرغم من I8217m متأكد he8217ll انظر على هذا النحو. وهو قبول صريح وصادق من قبله. I8217m مما يجعلها كوتو لأن غاري يسلط الضوء على مشكلة حقيقية أن نرى عندما ننظر إلى التعليمات البرمجية القادمة من وكالة ناسا جيس. ولكن don8217t تأخذ كلمتي لذلك، تحميل البرنامج بنفسك وإلقاء نظرة. أعتبر إلى مهندس البرمجيات في الشركة الخاصة بك ونطلب منهم ما يفكرون. جيس نموذج E مصدر نموذج المناخ العالمي هنا جيستمب (تحليل درجة حرارة السطح) مصدر هنا بالتأكيد، وهذا هو واحد من العديد من برامج النمذجة المناخية هناك، ولكن يحدث أن يكون الأكثر تأثيرا، منذ جيس و جيستمب هي النواتج الأكثر استشهاد على نطاق واسع في وسائل الإعلام الشعبية. يبدو أن صناعة الولايات المتحدة للقيام بعمل أفضل لتطوير البرمجيات من البرامج الحكومية، لأنه في مجال الأعمال التجارية، وإذا كان شيء don8217t العمل، أو don8217t تعمل بشكل جيد، والعقود تضيع وندور الناس الحصول على النار. هناك 8217s العواقب على العمل غير المطابقة للمواصفات. في الأوساط الأكاديمية، والحل هو عادة لطلب المزيد من المال المنح. ذكرت في نيو ساينتيست 4 يوليو واجهت بوينغ بعض الأمراض الهيكلية خطيرة في 787. الجديدة كشفت اختبارات الإجهاد أن 8220wingbox8221 و 18 مناطق على جسم الطائرة حول الأجنحة تتطلب تعزيز. 8220 لم تطابق البيانات من الاختبار نموذج الكمبيوتر لدينا، 8221 يقول بوينغ نائب الرئيس سكوت فرانشر. وهذا يسلط الضوء على صعوبة التنبؤ بسلوك المواد كفرب المتقدمة المستخدمة في هياكل كبيرة جدا لأول مرة. جيمي هي (07:45:46). مهندسي البرمجيات عندما هم أقل من اللازم والعمل الزائد. لماذا لا تبحث عن وظيفة أخرى أعتقد أن أفضل منها ذهبت وعملت في قطاع النمذجة المالية 8230 .. ربما يمكن الاستعانة بمصادر خارجية جيستيمب إلى الهند أو الصين هل يمكن لأي شخص هازارد تخمين حول البيانات مدخلات مكتب الأرصاد الجوية في ضوء ما سبق لا مثل هذه القبول القادمة من ذلك الربع أو أنهم 8217ll يكون الخروج على آذانهم لا تقلق لي عندما يتم تفسير 8220unctiesties 8221 الظاهر بعيدا كما 8220 أفضل فهم 8221، وهو ما يعني لا شيء أمبير ليست هي نفسها كما يقول 8220 نحن نعرف أمبير وندرتاند كيف تؤثر على إخراج البيانات لدينا 8221، وخاصة عند التنبؤ المستقبل ما زلت أعتقد أننا في حدود قوة الكمبيوتر أمبير فهم حول المناخ. إذا كنت تضع افتراضات، سواء كانت معقولة أم لا، فإنها لا تزال افتراضات، أمب إذا كان خاطئا، أي قدر من القدرة الحاسوبية سوف تصحيحه أمبير أو تعطيك الجواب، والذي يبدو أن ما هو مو يعني ضمنا الحصول على هذا الجديد الفكر العميق الكمبيوتر، كما يبدو أنها تريد 10008217s واحدة أخرى من الأوقات أكثر قوة من واحد لديهم للحصول على النتائج الصحيحة كما يقول البروفيسور جون بريغنيل عدد ووتش، نموذج كوموبوتر يمكن أن يكون على حق أو خطأ، ولكن لا يزال غير ذي صلة موافق. أستطيع أن أرى كيف أن أولئك في المجتمع 8220climate 8221 اختيار لتجاهل الثقوب في نسيج نظرياتهم. ولكن لماذا وسائل الإعلام لدينا والسياسيين لدينا. (نعم البلاغية ولكن لا يزال 8230) لا أحد يشارك في هذه الفوضى ونتس يعمل، مهندسي البرمجيات المختصة، لأنها قد تؤدي عن طريق الخطأ وظائفهم والكشف عن الاحتيال في العالم. نحن يمكن أن يكون 8217t ذلك. عندما يو 8217re توصيل الاحتيال على هذا النطاق، تحتاج إلى التأكد من استمرار الاحتيال من أعلى إلى أسفل. كربي، كود سوفتوارد إنزروتابل أن لا أحد يفهم ولكن هذا يعطي دائما الإجابات 8220Right8221 هو شيء أن يكون عزيز، حراسة، ولم يتم أبدا استبدالها. جيد وآخر نقد مفيد، على ما أعتقد. ولكن، فعلت لأول مرة فورتران في عام 1965 (الإصدار الثاني - D) وأنا سعيد جدا أن تأخذ كلمتك أن هذه النماذج ليست أمثلة كبيرة من الوضوح. لقد رأيت كل الحلقات القيام به وإذا كان ثم البيانات أريد من أي وقت مضى أن أرى. أن يقال: أعرف أن أقدر أولئك منكم الذين يبحثون في هذه الأمور وأنا لا يثقون حكمكم. آخر قطعة من التعليمات البرمجية التي عملت دون أي أخطاء غير متوقعة كانت 10 طباعة 8220Hello8221 20 انتقل 10 وأنه لا يزال مطلوبا نصف ساعة من التصحيح. الإيمان الذي يتم وضعه في نماذج مرعب والناس تجاهل دائما المشكلة الكامنة وراء واحد ليكون نموذجا صحيحا يجب أن تكون قريبة من 100 دقيقة ضد الوضع في العالم الحقيقي، إذا كان iso8217t هو في أسوأ مضيعة للوقت، في أفضل مؤشر غامض حول ما إذا كانت نظريتك الأصلية ذات مصداقية ولكن لا ينبغي أبدا أن تعامل كدليل على أي شيء. أنا تصفح من خلال رمز قليلا. إذا أخذت التعليقات في القيمة الاسمية، يبدو أن لديك علماء الدكتوراه كتابة الإنتاج فورتران رمز 8211 فكرة سيئة. ممارسة الصناعة هو أن يكون الكتاب رمز المهنية الحفاظ على البرنامج. على الرغم من أن لدي درجات في الهندسة الكيميائية، عملت مبرمج لمدة 4 سنوات في منتصف 1980s على فورتران، كوبول، ساس، والعديد من لغات الترميز الأخرى. كنت المبرمج الرئيسي ل 50 ثروة شركة 8217s في المنزل برنامج محاكاة كيمي، حوالي 500،000 خطوط من التعليمات البرمجية. المبرمجين الحفاظ على وتحديث التعليمات البرمجية. وقدم محللونا (عادة الماجستير أو دكتوراه الكيميائية المهندسين) المدخلات والنمذجة الرياضية، والتي نحن ثم ترميز. يسمح المحللون weren8217t لتجميع أو تحميل أي شفرة المصدر. قد يكون امتدادا لاستدعائه أسوأ فورتران الترميز، ما قليلا رأيت wasn8217t جيدة جدا. وأود أن حجز الحكم حتى كنت قد تشغيل بعض فورتران تحليل المصدر ورسم الخرائط البرمجيات لنرى كيف يضع التعليمات البرمجية. كحد أدنى يجب أن يكون لديهم قق وبرنامج الاختبار. قد يكون من الصعب بشكل خاص العثور على أخطاء الترميز 8217t. هل استعرضت نماذج جيس 8220peer 8221. يبدو مثل المشروع التالي بعد سورفاسستاتيونس يلتف. I8217ve مكتوب بلدي ناسا مثل البرمجيات نموذج المناخ 10 ريم المناخ العالمي نموذج 20 طباعة 8220 نهاية Nigh8221 30 انتقل إلى 20 40 نهاية (من كوكب) همم. أنا أتساءل. ربما إذا المبرمجين غم قضى برمجة الوقت بدلا من الجدل على بلوق 8230 كمطور البرمجيات المهنية منذ فترة طويلة، شهدت I8217ve الملايين من خطوط التعليمات البرمجية، من صفات متفاوتة. ولكن يمكنني تقديم بعض التعميمات. الناس الذين رمز شيء ما كمساعدة لعملهم، وليس التركيز الأساسي، بشكل عام كتابة رمز رديء. لذلك I8217m لا يفاجأ لرؤية نوعية التعليمات البرمجية. يبدو إلى حد كبير مثل ما I8217d الحصول على إذا I8217m التواصل، ويقول، مع الرجل الأجهزة الذي يكتب أداة لاستخدامها على الأجهزة تصميم he8217s. غير قابل للقراءة، غير موثقة، رمز غير قابل للتحقيق الذي يعمل أساسا. وعلماء الرياضيات أن I8217ve عملت مع نفس الطريقة، لذلك I8217d تخمين I8217d نتوقع نفس الشيء من العلماء المناخ. إذا كان لي لتخمين، I8217d يقول أن عدد من مهندسي البرمجيات المهنية الفعلية لديهم العمل على المشروع هو صفر، أن 100 من هذا وقد تم ترميز من قبل العلماء أنفسهم. وأعتقد أن أفضل منها ذهبت وعملت في قطاع النمذجة المالية .. نعم أعتقد أنها ربما فعلت لمهندس البرمجيات أكثر من اللازم، غاري لدينا لا يزال يجد الكثير من الوقت لقضاء على بلوق عندما أعمل، وعادة على منصة النفط في الخارج ، 4 ساعات قبالة، أن أتمكن من إنقاذ من معظم الأيام، وعادة ما تنفق النوم. 8220 من الصعب جدا، إيمهو، إلقاء اللوم على مهندسي البرمجيات عندما كانوا أقل من أجورهم وتعرضوا لفرط في العمل. 8221 أوقفت أوكارنكار وصول الجمهور إلى بيانات الأجور في عام 2008. على ما يبدو كان من الصعب العثور على التمويل الاتحادي لهذه المؤسسة أسفل في وقت مبكر من عام 2006: climatesciencewatch. orgindex. phpcswdetailsgreenwire-إنهوف ولكن إذا كان الجدول العام للموظفين الاتحاديين أي مؤشر على التعويض في نكار فإن 80،000 سيكون تقدير بداية جيدة من 8220 مدفوع 8221. bls. govococgcgs041.htmearnings غاري، ربما يجب عليك إجراء نسخ احتياطي للمطالبات التي لا أساس لها من الصحة مثل كونك 8220underpaid8221 و 8220overworked8221، إيه أو هل لا تملك الوقت الكافي لنشر ذلك، كونك أكثر من اللازم وكل شيء، في مكتبك في عطلة نهاية الأسبوع على 8220 الوقت 8221 على سبيل المثال What8217s صعبة جدا حول كتابة البرمجيات لنمذجة المناخ كل ما عليك القيام به هو التأكد من النموذج الخاص بك يبث من الاحترار. ثم وسائل الإعلام سوف تأخذ الرعاية من بقية. وكان جميع المهندسين البرمجيات I8217ve التقى أقل من اللازم بالتأكيد. Riiiight8230. أنا مهندس البرمجيات ولقد نظرت في برنامج جيس. فمن الصحيح هناك مع بعض من أسوأ رمز رأيت من أي وقت مضى. السؤال ليس ما إذا كان يحتوي على أخطاء، والسؤال هو فقط مدى سوء الأخطاء ومدى تأثيرها على النتائج. نضع في اعتبارنا أن الأخطاء يمكن أن تؤثر على النتائج في كلا الاتجاهين، على الرغم من، نظرا لسجل حافل جيس، أشك أنه سيكون خطأ على الجانب بارد) كما واحد مع درجة الهندسة الكيميائية، وأنا حقا يحتقر عليه عندما الناس ديكريب أنفسهم كما 8220software engineer8221. انهم ليسوا أكثر مهندس ثم الرجال الذين التقاط القمامة بلدي، الذين يعرفون أيضا باسم مهندسي الصرف الصحي. من ويكيبيديا، يتم تعريف الهندسة على أنها 8220 التطبيق الإبداعي للمبادئ العلمية لتصميم أو تطوير الهياكل والآلات والأجهزة، أو عمليات التصنيع، أو الأعمال التي تستخدمها منفردة أو في تركيبة أو بناء أو تشغيل نفسه مع إدراك كامل لتصميمها أو التنبؤ بسلوكهم في ظل ظروف تشغيل محددة كل ما يحترم وظيفة مقصودة، واقتصاديات التشغيل والسلامة في الحياة والممتلكات. آخر مرة نظرت، 8220 مهندسي البرمجيات 8221 لم يكن لديك لاتخاذ مهندس في التدريب (إيت) امتحان أو امتحان الهندسة المهنية. وصف أكثر ملاءمة لأصدقائنا الذين يكتبون البرامج قد يكون مطور البرمجيات رمز. في البجعة السوداء (أمازونبلاك-سوان-إمباكت-هايلي-Improbabledp1400063515refsr11ieUTF8038sbooks038qid1246893449038sr1-1) يقول نسيم نيكولاس طالب أنه من المستحيل بنجاح نموذج النظم المعقدة على مدى فترات من الزمن أن المحاولة نفسها هي حماقة. وأود أن تكون مهتمة هنا من أي شخص يشارك في النمذجة المعقدة التي يعتقد خلاف ذلك. قد يكون لدى أي شخص برنامج نمذجة المناخ مشاكل ولكن ليست المشكلة. ما هو مهندسو البرمجيات الذين يحاولون ترميز بعض النماذج التي لا معنى لها سمعت عضو الكونجرس يسأل: هل تعلمنا أي شيء من هذه النماذج المالية الفاشلة (التعبئة من الرهون العقارية إلى خطر أقل). إذا كنت وضعت أدنى الثقة في نماذج غو التي تعلمتها نوثينغ. هنا هو مقارنة قصيرة بين اثنين: 1 كان نموذجي الرهن العقاري حافزا المالي ليكون على حق. ولدى واضعي المناخ حوافز مالية لنشر الإنذار وتوليد المزيد من المنح الحكومية. وهم يخططون للقتل قبل أن يصبح سخف توقعاتهم التي تبلغ 100 عام واضحا. (وقد أخطأت في تقديرها لأن جميع التوقعات الأربعة للفريق الحكومي الدولي المعني بتغير المناخ ليست مجرد خطأ ولكنها تقع خارج فترة الثقة البالغة 90 يوما). 2. نماذج الرهن العقاري اختبار ضد نماذج البيانات التاريخية الافراج إلا بعد الانتهاء من اختبارات الانحدار باستخدام البيانات التاريخية. يعرف معدو المناخ الأرض التي يتم تدويرها خلال أكثر من اثني عشر عصرا جليديا، ولا تستطيع نماذجهم التنبؤ بهذه الدورات. انهم لا يهتمون. (انظر 4) 3. حاول واضعو الرهن العقاري دمج جميع المعلومات المعروفة ذات الصلة. ولا يهتم واضعو المناخ إلا بالعوامل التي يسببها الإنسان (انظر 4). وعلاوة على ذلك، فإنها تتجاهل العلم عندما يحصل في طريق أهدافها. فعلى سبيل المثال، فإن كل دراسة عن ثبات ثاني أكسيد الكربون في الغلاف الجوي (أكثر من 30 منها) تجد أن ثاني أكسيد الكربون الذي يتم إطلاقه في الغلاف الجوي سيستمر لمدة 4-15 سنة قبل أن يستهلكها (في الغالب) المحيط. أفهم أن نماذج غو توتر 100 سنة لأن افتراض أقل من 50 سنة لا ينتج عنه تأثير الاحترار المطلوب. هل هذا الحق تعتبر الجمعية الكيميائية الأمريكية هذا خطأ فادح في نماذج غو. 4. مفهومي الرهن العقاري فهموا النظام الذي كانوا يحاولون النمذجة. ولا يفهم واضعو المناخ المناخ كثيرا ولا يهتمون به. ووفقا لوثيقة الفريق الحكومي الدولي المعني بتغير المناخ، المبادئ التي يحكمها عمل الفريق الحكومي الدولي المعني بتغير المناخ: يتمثل دور الفريق الحكومي الدولي المعني بتغير المناخ في تقييم المعلومات ذات الصلة بفهم الأساس العلمي لخطر تغير المناخ الناجم عن النشاط البشري على أساس شامل وموضوعي ومفتوح وشفاف. إن القيود التي يسببها الإنسان تجعل من الواضح لماذا لا يوجد سوى القليل نسبيا من البحوث حول دور الشمس، ومدار الأرض، وتشكيل الغيوم (التي تبرد الأرض)، والأشعة الكونية (التي قد تكون غيوم البذور)، أو التيارات المحيطية أو المناخ الضخم والتغيرات في الماضي الذي نقل الأرض من وإلى أكثر من اثني عشر الجليد العصر البشري البشر ليس لها تأثير كبير على أي من هذه. ريان يحتاج إلى الحصول على أموال أكثر من اللازم، ومطوري البرمجيات إمهو غالبا ما تكون زائدة عن الصعوبات من وظائفهم. تعلمت I8217ve البرمجة في وقت فراغي 8211 هو علم الصواريخ ain8217t. حقق Ryan8217s تحسنا كبيرا على ستيغ وآخرون تشغيل أكثر من 3000 إعادة بناء القطب الجنوبي وحل العديد من القضايا المعلقة. كما وجه عدة تعليقات إلى رجال الصليب الأحمر. يبدو وكأنه يمر أسبوع سيء بالنسبة لهم. لم أكن على علم بأن أي إلقاء اللوم كان موجها إلى مهندسي البرمجيات جيس. فهمت أنها كانت تنفذ بأمانة افتراضات الحساسية الزائفة وكل ما تبقى من تلك التي تشمل الأيديولوجية الحالية لنمذجة المناخ. أنا يميل إلى عدم قراءة الكثير في هذا زميل 8217s تقييم صريح. وأعتقد أن ستيف M. كان قليلا فوق القمة مما يشير إلى أن مبرمج كان ينبغي أن يكون قد نقل شكوكه حول نماذج للفريق الحكومي الدولي المعني بتغير المناخ والكونغرس ووسائل الإعلام. الرجل الذي لديه لترجمة الافتراضات كربي من أعلى أعلى إلى رمز عملي لا ينبغي أن يكون حقل هذا النوع من القضية أو الوقوع في الوسط. ويبدو أن هناك علاقة بين مشاركة الحكومة ونقص جودة البرمجيات المتقدمة. وفي المملكة المتحدة، تعهدت الحكومة بتمويل نظام رعاية صحية معقد إلى حد كبير، يفترض أن يربط جميع السجلات الطبية لكل طبيب أسرة، وكل مستشفى في قاعدة بيانات مركزية واحدة. وعلى الرغم من أن القطاع الخاص قام بتطويره، إلا أنه لم يكن حتى الآن أقل من كارثة كاملة، وهدر شيء من هذا القبيل ستة مليارات جنيه. الآن تذهب إلى أقصى الحدود، وتمويل الحكومة ليس فقط تمويل الشيء ولكن تطويره في حد ذاته ولا يمكن لشخص عقلاني يتوقع أي شيء على الإطلاق من الطرف الآخر الذي يشبه بأي شكل من الأشكال الغرض المعلن. مجرد الاستيلاء على أن البرمجة لوغواج-فقد كان أكثر من 30 عاما منذ I8217ve رأيت فورتران هو لي-أرى نوعا من المتعمد 8216loop8217 إذا كنت سوف في الطريقة التي كتبت I8217m أي مبرمج ولكن قد تم تحميل اثنين من دراسات الحياة البرية المختلفة في فورتران واشتعلت في 8220garbage في القمامة خارج 8221 سيناريو - GIGO أن دانغ بالقرب حصلت على أغلقت الدراسة بأكملها باستمرار. بعد 3 سنوات من العمل الميداني الصعب 8230 هذا الشيء جيس يجعلني أتساءل 8230 ومن المحيرة كيف تسمى نماذج 8220experiments 8221 بوتاند تستخدم أيضا ل 8220prediction8221. إذا كان النموذج مفهوما، فإنه ليس تجريبي. وإذا كان النموذج تجريبي، فلا ينبغي الاعتماد عليه للتنبؤ. أنا don8217t حقا الرعاية كم من المال والوقت والجهد وذكاء ذهبت إلى تطوير النماذج. هناك نقطة حيث علينا أن نقرر ما إذا كان على ثقة النتائج. العديد من المشاريع يستغرق الكثير من الوقت والجهد ولكن مع ذلك، في النهاية أنها تفشل ببساطة. نحن بحاجة إلى أن نكون صادقين حول ما إذا كانت النماذج المناخية هي نجاحات أو إخفاقات. يبدو أنه قد يكون أكثر دقة القول بأن موظفي أوكار (على الأقل بعضهم، مهندسين برمجيات قد يكونون أكثر ضمير) يعملون تحت طائلة و زائدة: 8220 قمنا أيضا بتقييم ما إذا كانت رواتب و أجور أوكار بشكل صحيح و متقاسمة على الجوائز الاتحادية. ووجدت مراجعة الحسابات أن موظفي أوكار 1) لم يسجلوا جميع ساعات عملهم، 2) اتهموا بالميزانية بدلا من الساعات الفعلية، 3) حصلوا واستخدموا وقت تعويضي غير مسجل (على الرغم من أن أوكار لا تسمح رسميا بالوقت التعويضي)، و 4) - حساب وقتهم كما عملت عندما كانوا في إجازة. وعلاوة على ذلك، لم يكن لدى أوكار تبرير مكتوب مفصل لدعم أكثر من 80 في المئة من تكاليف العمل العينة أوكار نقل بين الجوائز. وبدون أساس موثوق به للدعم، فإن 58 مليون دولار من تكاليف العمالة التي تتحملها الهيئة الوطنية للضمان الاجتماعي وغيرها من جوائز الوكالات الفيدرالية معرضة لخطر عدم توزيعها بدقة. تحتاج أوكار إلى تطوير نظام ضبط الوقت لاستيعاب جميع ساعات العمل من قبل الموظفين بأجر، وتوفير التوجيهات الخاصة بموظفيها على الانتهاء من تيميكارد، وتوفير المزيد من الإشراف على المحاسبة عن إجازة ونقل تكاليف العمالة بين الجوائز .8221 nsf. govpubs2008oigmarch2008oigmarch20082.pdf صعد جاري ستراند إلى الأمام للمشاركة في المناقشات في التدقيق المناخي، ووضع نفسه في خضم الأسئلة الصعبة وجهات النظر المتشككة. أنا لأحد أشيد بشجاعته ومهنيته للقيام بذلك. ومع ذلك، أظن أنه يأسف صياغة تصريحاته بهذه الطريقة ولكن أظن أيضا أن التعليمات البرمجية كما ذكر. we8217ve رأيت جميع التعليمات البرمجية القديمة في بيئات العمل التي تؤدي إلى الكثير من هز الرأس وتجول جبين، لذلك I8217m بالكاد فاجأ القبول. دعونا نأمل أن السيد ستراند isn8217t رسمها، وأوصى من قبل علماء المناخ المناخ على هذا. لماذا لا توجد بيانات بيانات ثاني أكسيد الكربون لعام 2009 من نظرية الفوضى يجب على أي شخص يتكبد قيمة ودقة نماذج الكمبيوتر، وخاصة في محاكاة الأنظمة المعقدة للغاية مثل مناخنا 8217s، أن يعيد النظر في قصة إدوارد لورينز وملكيته مكي لغب-30، التي استخدمها في 1960-61 لمحاولة نموذج أنماط الطقس المتغيرة وإظهار إمكانية استخدام الكمبيوتر في التنبؤ بالطقس. اكتشافه أن الاختلافات الهائلة في التوقعات يمكن أن تستمد من الاختلافات الصغيرة في البيانات الأولية أدى إلى تطوير الرياضيات وراء هذه الظاهرة وصياغة المصطلحات غريب جذب وتأثير الفراشة، والمفاهيم الأساسية في نظرية الفوضى. يقال القصة في الفصل الأول من الكتاب المعروف الآن ورائع، 8220Chaos: جعل العلوم الجديدة 8221 جيمس غليك 8211 نشرت في عام 1987 من قبل البطريق الكتب. من الفصل 1، 8220 ذي بوترفلي effect8221، الصفحات 15 و 16 و 17 8220 مع كمبيوتره البدائي، كان لورينز يغلي ذبله إلى أرفع هيكل عظمي. 8212-8221 8220 يوم واحد في شتاء عام 1961، والرغبة في دراسة تسلسل واحد على طول أكبر، لورينز أخذت اختصارا. بدلا من بدء تشغيل كامل، بدأ في منتصف الطريق من خلال. لإعطاء الجهاز شروطه الأولية، وقال انه كتب الأرقام مباشرة من المطبوعات السابقة. ثم سار إلى القاعة للخروج من الضجيج وشرب فنجان من القهوة. وعندما عاد بعد ساعة، رأى شيئا غير متوقع، وهو أمر زرع بذورا لعلوم جديدة. 821282118221 8220 من نفس نقطة الانطلاق تقريبا، رأى إدوارد لورينز أن الطقس في جهاز الكمبيوتر ينتج أنماطا نمت أبعد وأبعد عن بعضها حتى اختفى كل التشابه. 8212-8221 8220 كان يدرك الحقيقة. لم يكن هناك أي عطل. وتكمن المشكلة في الأرقام التي كتبها. في ذاكرة computer8217s، تم تخزين ستة منازل عشرية. 506127. على المطبوعة، لتوفير مساحة، ظهرت ثلاثة فقط. 506. وقد دخلت لورينز أقصر، أرقام مقربة، على افتراض أن الفرق 8211one جزء في ألف، 8211was غير متكافئ. 8211 8211 8211 حتى في نظام لورنز 8217s المعادلات الخاصة، أثبتت أخطاء صغيرة كارثية. 8212-8221 8220 ولكن لأسباب حدس الرياضية أن زملائه سوف تبدأ في فهم فقط في وقت لاحق، ورأى لورينز هزة: شيء كان فلسفيا للخروج من المفصل. الاستيراد العملي يمكن أن يكون مذهل. على الرغم من أن معادلاته كانت محاكاة ساخرة لطقس الأرض 8217، كان لديه إيمان بأنهم استولوا على جوهر الجو الحقيقي. في اليوم الأول، قرر أنه يجب أن يكون مصير التنبؤ بطقس بعيد المدى .2212 للبشرية لوضع إيمانهم الكامل ببرامج الكمبيوتر التي تحاول محاكاة نظام الفوضى مثل مناخ الأرض 8217، وهي حساسة جدا للظروف الأولية الدقيقة هي فعل من الجنون. Y8217all قد تكون مهتمة في مناقشات مخاطر نوع الكمبيوتر في 8220Risks Digest8221 catless. ncl. ac. ukRisks. البحث عن الكلمات الرئيسية مثل 8220climate نماذج 8221، 8220 الاحترار العالمي 8221، وما إلى ذلك، وسوف تجد أن العديد من هذه القضايا من برامج المحاكاة نوقشت لعقود. ويدير المنتدى بيتر نيومان وبدأ في عام 1984. كما واحد مع درجة الهندسة الكيميائية، وأنا حقا يحتقر عليه عندما الناس ديكريب أنفسهم كمهندس البرمجيات. انهم ليسوا أكثر مهندس ثم الرجال الذين التقاط القمامة بلدي، الذين يعرفون أيضا باسم مهندسي الصرف الصحي. من ويكيبيديا، تعرف الهندسة بأنها التطبيق الإبداعي للمبادئ العلمية لتصميم أو تطوير الهياكل أو الآلات أو الأجهزة أو عمليات التصنيع أو الأعمال التي تستخدمها منفردة أو مجتمعة أو لبناء أو تشغيل نفسها مع إدراك كامل لتصميمها أو التنبؤ بسلوكهم في ظل ظروف تشغيل محددة كل ما يحترم وظيفة مقصودة، واقتصاديات التشغيل والسلامة في الحياة والممتلكات. آخر مرة نظرت، مهندسي البرمجيات لم يكن لديك لاتخاذ مهندس في التدريب (إيت) امتحان أو امتحان الهندسة المهنية. وصف أكثر ملاءمة لأصدقائنا الذين يكتبون البرامج قد يكون مطور البرمجيات رمز. كمهندس برمجيات عمل، يجب أن أتفق على مضض معك. هناك القليل جدا من العلم والكثير من الفن لكتابة البرمجيات. 8220 هندسة البرمجيات 8221 على عكس 8220real8221 الهندسة في أن أي شخص يمكن أن نطلق على أنفسهم 8220 مهندس البرمجيات 8221 في حين أن لديك لتخرج من كلية الهندسة المعتمدة ومن ثم إجراء عملية ترخيص صارمة من أجل أن تصبح مهندس 8220real8221. ومع ذلك، أشير إلى نفسي كمهندس 8220 البرمجيات 8221 لأنني أدرك أنه يجب أن يكون هناك عملية لتطوير برامج الجودة بدلا من الكتابة عمياء ومراجعة التعليمات البرمجية. راجع للشغل: جيستمب يظهر أنه في حين أن أي شخص يمكن أن يكتب البرمجيات، معظم الناس لا ينبغي. الشخص الأكثر ذكاء هو، وأصعب هو بالنسبة لهم لتحقيق أنهم ليسوا مؤهلين للقيام بشيء ما. العديد من المواضيع مرة أخرى، ودعا شخص هذا الرمز 8220a جريمة ضد الإنسانية 8221. أنا haven8217t مشفرة في فورتران منذ 608217s، ويبدو سيئة حتى من خلال المعايير المنخفضة. على الرغم من ذلك، رمز iso8217t الكثير من مشكلة مثل النموذج نفسه. لديك مئات من المتغيرات من حساسية غير معروفة، وعدد قليل جدا من المعادلات ثبت. حتى تخمين. وقال شخص ما مرة واحدة 8220Assumption هو أم كل 82308221 (أو يمكنك تحديد النتيجة مقدما، وضبط المدخلات) مرة أخرى في منتصف 808217s عندما كان PC8217s لا تزال اللعب متضخمة، قرر أحد المهندسين بلدي نموذج منتج من الألغام باستخدام P - التوابل، برنامج تحليل الدوائر الإلكترونية. وقد قرر أن لديها الفولتية الانتاج ذروة تتجاوز جيجافولت واحد. وبما أننا جميعا ما زلنا على قيد الحياة ولم نر مسامير البرق التي تحلق عبر المختبر، فقد اقترحت أن نموذجه يحتاج إلى بعض التحسن. وقد أسقط المشروع. أما بالنسبة للمشاكل المالية: القليل جدا للقيام مع النماذج الخاطئة. وهناك الكثير للتعامل مع التدخل الخاطئ في السوق. إقراض المال للأشخاص الذين لا يستطيعون دفعها يعود don8217t العمل. كلوبيرينغ الاقتصاد للحد من الغاز أثر له تأثير ضئيل على المناخ no21217t العمل. نحن (على الأقل بعض) تعلمت درس المال بالطريقة الصعبة. يمكن أن يكون درس غاز التتبع أكثر تكلفة بكثير. فإنه ليس من المستغرب أن النماذج المناخية الفقيرة. 1) مصادر البيانات الأولية التي تستخدمها لا يمكن الاعتماد عليها بسبب مشاكل دقة البيانات، ندرة نقاط جمع البيانات العالمية والطريقة الخام جدا التي تستخدم البيانات لتوفير التقديرات العالمية. 2) المناخ هو نظام غير الخطية الفوضوي وتطوير نموذج التي يمكن أن توفر اتجاهات المناخ في المستقبل دقيقة حقا هو استحالة مع مدخلات البيانات الحالية وقوة الكمبيوتر المتاحة. حتى شيء أساسي مثل نمذجة آثار السحب هو استحالة، على الرغم من أن هذه هي واحدة من أهم منظمي المناخ. عندما يتعلق الأمر نمذجة التيارات المحيطية والآثار الشمسية، والوضع هو أسوأ من ذلك ونحن don8217t حتى يكون نماذج نظرية جيدة لكيفية تصرفهم وما تأثير لها على كوكبنا. 3) كونه نظام الفوضى، حتى أدنى خطأ في النموذج سيكون لها تأثير متزايد على دقة التوقعات كما تمر سنوات. وأعتقد أن الناس تمويل إنتاج GCM8217s المختلفة التي هي في جميع أنحاء اليوم هي ذكية بما فيه الكفاية لتحقيق عقم من مهمة التنبؤ النمل المناخ مستوى 100yr. شريطة أن النتائج التي تتلقاها تعطي 8216good8217 تناسب المناخ الماضي وتوفر لهم توقعات صحيحة سياسيا، ثم لماذا أنها تستثمر مبالغ كبيرة من المال في هذا المجال. نظام قديم لا شك مع العديد، العديد من التنقيحات. جميع الأنظمة مثل هذا في نهاية المطاف تبدو سيئة إلى حد ما. أنها تحتاج إلى إعادته، ولكن سيئة المظهر رمز لا يعني بالضرورة سيئة رمز العمل. حتى ذلك الحين، سوف تستمر في توفير الأمن الوظيفي للقلة الذين يفهمون ذلك. ألان، الافتراضات قد تكون لعنة من العلوم البحتة، ولكنها هي الخبز وزبد المهندسين. الفئات الرئيسية في العام سوفمور المفترض أن يعلم المفاهيم الرياضية الأساسية، ولكن الدروس الرئيسية هي في افتراضات معقولة وغير معقولة. إذا قمت بإجراء افتراضات غير معقولة، فشلت. هناك الكثير من التعليمات البرمجية وليس وقتا كافيا بالنسبة لي لفك تشفير وفهمه، ولكن أعتقد أن هذا سيكون من الصعب حتى في أفضل الممارسات المتوافقة الأساسية (أسهل من جميع اللغات لقراءة وكتابة في معظم الوصفية الذاتي possible). While this sort of thing needs to be complicated, I cannot help but feel cheated that I cannot even find the array definitions in many cases, much less where they are set. One thing that irks me is that they are detailed enough to adjust for the changing weight of dry air in higher CO2, when an increase of CO2 to a full 1 (an incredible amount) is only 0.15 gmol. This is less than half a percent of the standard estimate (28.8 gmol). If this affects the model8217s outcome at all, then the model is laughably oversensitive, because there is no way that you can get two significant figures of accuracy, much less three, on 90 of the valid inputs. It8217s comparable to using a surgeon8217s scalpel while blindfolded. A baseball bat is just as accurate. Rod Smith (09:48:05) : As an old very old programmer who has many times been forced by Federal contract requirements to code AND DOCUMENT to Federal Standards, some of which were (to use a polite word) absurd, why is it that Federal Employees dont have to meet these same standards And why is anyone still coding in Fortran I asked that question about FORTRAN previously and was roundly spanked by people who informed me that FORTRAN is still used in the engineering field and is also commonly used on supercomputers. I can only assume Fortran is equally prevalent in science as in engineering. I still question why a more modern, object-oriented language such as C (or even Java) isn8217t used. Is FORTRAN mult-threaded I8217m also told some versions of FORTRAN have object-oriented extensions, but they aren8217t commonly used. If software engineers are in short supply, that8217s a sign that NASA needs to migrate to a more contemporary system. Last I heard, there were a lot of layoffs in the IT field. Surely there are some out-of-work computer science majors who would love to work for GISS Does anybody know the hardware and OS GISSTEMP runs on First, I8217m a software developer with 22 years of post-college professional experience. I used to work for the Jet Propulsion Laboratory where I was responsible for maintaining some of the computer graphics software used by PIO for the Voyager and Galileo 8220flyby8221 animations, all written in FORTRAN. With all due respect to everyone hammering on the quality of the code and the software developers who created this code, the FORTRAN here looks very typical of most of the FORTRAN I encountered 20 years ago at JPL in a professional capacity. The problem with the code is twofold: (1) The code is old. You can tell from the varying comment styles and coding styles in various source files that it has been worked on by a large number of people over a long period of time. Typically code like this suffers from the 8220Lava Flow8221 anti-pattern: the next person to work on a chunk of code doesn8217t know fully how things work, so they delicately add their work, making as little change as possible. Lower layers are 8220frozen8221 like old lava, with new code poured on top, and allowed to freeze itself. (2) The code doesn8217t use modern coding techniques such as object oriented coding styles. This is typical of code from the 19808217s: OOP programming (and related techniques, such as using design patterns to keep code maintainable) are innovations that didn8217t get wide-spread support in the programming community until the 19908217s. This means the code is hard to read and hard to maintain from current coding standards. (3) One would hope that there would be a separate document which outlines the equations, formulas and rational used in each section of the code. Unfortunately most programmers take the attitude that 8220code is self-documenting8221, when it is no such thing. When I was at JPL I spent a considerable amount of time documenting the code I inherited so I could keep it straight in my mind8211and if I were tasked to maintain this code, that would be the first thing I8217d do. Ideally I would try to trace back each of the calculation methods back to the scientific paper or textbook which provided the underlying formula, so there is an understanding why I8217m carrying out a particular calculation at a particular point. This sort of sloppy documentation is inexcusable, of course8211but it is an extremely common problem in the software community. (4) It is a common lament amongst software developers to distrust what they don8217t understand8211especially any newly inherited code. I had a software developer undertake rewriting large chunks of code I wrote myself8211telling me to my face that whoever wrote it was an idiot. (He didn8217t know it was me. I let it go.) Thus, no-one working on 20-year-old code will ever say it8217s good code, regardless of the quality of the code. And they8217re all going to itch to rewrite the code8211so they can understand it, not because the quality is necessarily bad. So I wouldn8217t trust the comments of the developers who say the code quality is bad. It looks to me to be typical Fortran code from the 19808217s. I8217d say the real problem here is twofold: (1) The code is not properly documented with references to appropriate scientific texts. And as a consequence (2) we are over-reliant on the predictive model of a chunk of code no-one really understands. But code quality: having worked as long in the software industry as I have, code quality is a constant lament8211and really means 8220I haven8217t figured it out.8221 Think of the billions Boeing has spent on their models, and they still don8217t aren8217t perfect 8220Specifically, Boeing found that portions of the airframe those where the top of the wings join the fuselage experienced greater strain than computer models had predicted. Boeing could take months to fix the 787 design, run more ground tests and adjust computer models to better reflect reality.8221 If realclimatescientists ran Boeing, they would defend the 8220models8221, built the plane, crash dozens, kill thousands, bankrupt Boeing and blame the skeptics Yet another software engineer here 8230 8220Keep in mind that the errors could be impacting results both ways, although, given the GISS track record, I doubt it would error on the cool side )8221 That8217s a way bias can creep into any software that produces numbers (eg modelling software) where people have pre-determined expectations for the numbers. Bugs that cause the numbers to differ from the expected result are spotted and fixed. Other errors 8230 well not so much. John F. Hultquist (08:21:57). Good post and useful critique, I think. But, I first did FORTRAN in 1965 (version II-D) and am quite happy to take your word that these models are not great examples of clarity. Ive seen all the do loops and if then statements I ever want to see. That being said: Know that I appreciate those of you that are looking at these things and I do trust your judgment. I wrote Economics modeling progrrams in the early 708217s on fortran S Bridges (08:55:35). As one with a chemical engineering degree, I really despise it when people decribe themselves as a software engineer. They are no more an engineer then the guys who pick up my garbage, who are also known as sanitation engineers. software engineers They are not engineers. Most have no degree. I really like this thread however since there are quite a few of us that used fortran. Working for the government and using fortran is kinda 30 years behind the times. Gary, still using key punch cards AGW has never been about the science. It has been about the social power. The use of climate science is only incidental. Now that science is 8216settled8217, the AGW community could give a fig about the terrible code that was used to sell the politics. Oh, and like John Galt, I agree completely with RS Bridges that most of today8217s 8220Software Engineers8221 are really just coders, I8217m one of them. True Software Engineers do exist but they8217re developing stuff like flight control systems for aircraft etc, and they8217re not using Fortran. Of course, all this Earth climate model talk is premature 8211 you first have create a model of the Sun that works properly :) Have any of the models managed to 8216predict8217 from 1850 to now Dr. Robert M. Carter characterizes three climate change realities: Climate change knows three realities: science reality, which is what working scientists deal with every day virtual reality, which is the wholly imaginary world inside computer climate models and public reality, which is the socio-political system within which politicians, business people and the general citizenry work. 82128212821282128212821282128212821282128212821282128212821282128212821282128212- Computer models are not reality. Nature is reality. Political reality is a public display of ineptitude in dealing with reality. Which of these realities is most conducive to your life, liberty and pursuit of happiness Jimmy Haigh (07:45:46). software engineers when theyre underpaid and overworked. 8220Why not look for another job8221 Probably because it8217s nonsense. From 2003: 8220Boulder labs: CIRES, NIST, NOAA, NTIA, UCAR, NCAR (JILA, LASP) Employ 2,566 in Boulder average salary 64,350 26 higher than overall average 51,2208221 slochamber. orgLibrary3A2.pdf But I will be one that blames the software engineers for compromised products and predictions that affect everyone8217s lives, especially when one complains that underpayment and overwork is the problem. 8221 Ive learned programming in my spare time it aint rocket science.8221 82128211 This is the same attitude that the climate modellers have and what leads to these low quality software solutions being created in the first place. Learning a high level language is easy, learning methodology and creating flexible and well documented code is much harder to master. I can build a deck or a small structure with a set of stairs but I am no carpenter and would never try and build a house that would meet building codes. As a Software Developer and Networking and IT Consultant I can simply ask those among us in this field to validate the following. 1) Cleaning up an IT Infrastructure maintained by a 8220learned in my spare time8221 in-house Network and Systems 8220Guru8221 is a waste of time. Start from scratch is faster than fixing it. 2) In house written and maintained software is functionally useless to an outside consultant when developed or maintained by a 8220this is not rocket science8221 spare time programmer. Again starting from scratch is cheaper than deciphering and fixing it on a cost basis. I have made a good living and built a company off these types of situations, so I hope Jeff Id and everyone like him keeps on keeping on because he is the reason my phone rings. Doug Ferguson (10:10:36) : Chaos: Making a New Science by James Gleick Published in 1987 by Penguin Books. Great book. Recommend it highly. After your jogging of my ancient memory I pulled it out to re-read. George Tobin: 8220The guy who has to translate crappy assumptions8230into workable code should not have to field that kind of issue or get caught in the middle.8221 I submit that the Montana farm boy who enlists in the Army should not have to get caught in the middle of an ideological war and lose his life. The farm boy, fortunately, disagrees and defends the country according to his own lights. So it would seem that a programmer, who is aware that software which doesn8217t meet the best standards available is assisting the mendacious in destroying the world economy, has an obligation to field any issue and get caught in whatever positions are necessary to alert the world. It probably won8217t be fatal to him. Hubristic 8220scientists8221 initiated what has become a fight for the survival of viable economies and scientists must enlist in this fight right now. R. S. Bridges wrote: 8220As one with a chemical engineering degree, I really despise it when people decribe themselves as a software engineer.8221 It8217s a heck of a linguistic promotion from 8220Code Monkey8221. R S Bridges (08:55:35) : As one with a chemical engineering degree, I really despise it when people decribe themselves as a software engineer. I take issue with this. I am most definitely a software 8220engineer8221. I don8217t believe you have a firm grasp of the roles that some of us of this profession fulfill. From Wikipedia, engineering is defined as The creative application of scientific principles to design or develop structures, machines, apparatus, or manufacturing processes, or works utilizing them singly or in combination or to construct or operate the same with full cognizance of their design or to forecast their behavior under specific operating conditions all as respects an intended function, economics of operation and safety to life and property. This pretty well sums up my job description, and what I have done for almost 30 years. I am not sure what else you would call my profession other than 8220software engineer8221. A more appropriate description for our friends who write programs may be software code developer. Perhaps, for those of you that have no clue what some of us do. 82208230in business, if something doesnt work, or doesnt work well, contracts get lost andor people get fired. Theres consequences to shoddy work. In academia, the solution is usually to ask for more grant money.8221 And in government the solution is to increase an agency8217s budget and call for more power. Perhaps the closet disbelievers who are afraid to speak up on issues of poor computer code or badly createdapplied statistical techniques or other issues in climate science could utilized Wikileaks Well, some of you may have guessed what the 8220Code8221 in my name stands for, and forgive me but my specialty is now being stepped on. No, coding is not 8220rocket science8221, but coding WELL is. Anyone involved in this has had to deal with poorly written or poorly laid out or poorly designed code. Anyone can code8230 yes, but very few can code well. I previously had a contract to 8220fix8221 a project that was 5 years in development using Visual Basic. It took me several months to even figure out what the original author was trying to do, and a few weeks to completely rewrite it properly. They have since hired several other contractors to add function to what I wrote, and none of them have had any problems with it. There is a difference between someone writing code using established methodologies and someone who taught themselves and gets mired in an oversized project. I also downloaded Model E and was amazed at how poorly written it was. My guess is that it evolved directly from the 8220proof of concept8221 phase and was never restarted, reorganized, or reanalyzed, all three of which are essential when your program grows past a certain point. About models in general, there is nothing wrong with the concept of modeling, as long as you understand that a model is ONLY AS GOOD AS ITS ASSUMPTIONS. For example, the Boeing model was perfectly sufficient for a static design, however one or more of their assumptions was incorrect (material strength structural load during flight) As these kinds of problems are encountered and fixed, future models become that much more accurate. If there is EVER a time when you think your model is completely accurate, you will have crossed the line into a fantasy world, since models are only representative, never definitive. The fundamental, critical flaw in the AGW crowd depending on models is that their models do not, and cannot, effectively model a system as complex as they are attempting to model. We have documented here a few important factors that they apparently didn8217t think of. The illusion that a complete climate model is built, or even can be built, is actually very entertaining to me. I8217m definitely NOT a software engineer, and only program8217d a bit of PASCAL in the day, but I have a descent grasp of what is meant by 8220poor coding8221. However, it would be nice if someone could give examples of poor coding and show how it affects the outcomes to modeling programs. It would be nice to actually see example of where the lack of 8220skill8221 (a Mannian term) affects the outcome of these climate models. While there are a lot of people out there that are 8220coders8221, some of us are not. Some of the things I design and develop include application models, data models and cryptographic systems. Additionally, these systems integrate with other systems using a wide variety of mechanisms, transfer agents and methodologies. Further, I develop source control management processes, procedures and methodologies to manage these projects, from design, coding, distribution, maintenance, auditing, logging, reporting, alerting, change-release, peer-review, integration, systems management, infrastructure integration, the whole spectrum. Perhaps I am taking issue with the slam on 8220software engineer8221 because my background did not stem from an MIS or such degree, but from a Bachelor degree in Computer Science, mathematics minor, physics minor (although I don8217t use the math8217s as much anymore). Mine is a scientific approach from an engineering perspective of software development. So, be careful when you round us all up and slam us into a box. True, we are not all engineers, but some of us really are8230 I have been a professional computer programmer for over 30 years in the insurance industry. Similar to this situation, we have Actuary8217s that write their own software solutions to complex insurance problems. And similar to this situation, it can result in software that no one else can understand at a glance. I have at times been called in to repairsupport such actuarial software. It is a challenge to do so, but it is what I do. From these experiences I have a respect for the need of the Actuary8217s to experiment with their software in order to learn more about their own models. When a programmer is added to the RampD mix, that programmer must become a subject expert. And in my opinion, not a very high percentage of programmers are capable of PhD level work. The idea of requiring that every piece of software must be written only by programmers would certainly be the utopia solution. However imposing such a requirement on mankinds computing needs would greatly harm our productivity and ability to learn by experimentation. In my case for instance, my managers have my workload already laid out for me 2 years in advance. Yes, I already know what projects I8217m supposed to be working on in 2011. This is because talented programmers are in fact in short supply when you consider the work that is ahead of us. And I concur that we are not 8220engineers8221. The state of Oregon has made it illegal to misuse the term (but they never enforce it). Doing so belittles the accomplishments of those that have been certified by the State as being actual engineers. Rod Smith (09:48:05). As an old very old programmer who has many times been forced by Federal contract requirements to code AND DOCUMENT to Federal Standards, some of which were (to use a polite word) absurd, why is it that Federal Employees dont have to meet these same standards And why is anyone still coding in Fortran Because it8217s still a very good language for MampS in science and engineering. And because it8217s incredibly wonderful for concealing slip shod science. As I noted in the thread at Climate Audit, my FOIA for the top level software quality documents for GISTEMP and GCM Model E found no responsive documents. NASAGISS has not even considered where these projects fit within NASA quality standards. I recall reading on the web an interview between some climate modelers, and I was struck that they were talking openly and consciously about their models8217 flaws. I realised that they are smart enough and professional enough to be perfectly aware of the limitations of their models. So our disagreement with them is less about quality assurance issues (8220yes there is room for improvement8221 they might say), and more about the attitude towards uncertainty. For the person in the street, the model results are highly inconvenient. They are a problem for society. But for the people creating the models, the results are very convenient. They raise the status of the field. More than once I8217ve read climate scientists refer to their work as 8220very important8221. And isn8217t this what any scientist wants to do make important discoveries As climate models appear to have little predictive skill, perhaps we need a new academic field of ecology, one that uses different methodologies, ones which are both more powerful, useful, and which render climate modeling obsolete. Pete W (11:48:04) : . And in my opinion, not a very high percentage of programmers are capable of PhD level work. I would certainly agree with you on that point. The percentage of top level programmers andor software engineers (and especially the latter), is relatively small compared to the total volume of personnel involved in software development as a whole. Yes, I already know what projects Im supposed to be working on in 2011. This is because talented programmers are in fact in short supply when you consider the work that is ahead of us. We operate similarly where I work. We have specific future goals laid out 2 to 3 years in advance. Because of our limited resources, we must engage in a lot of future planning, specific tasking and engineering. And I concur that we are not engineers. The state of Oregon has made it illegal to misuse the term (but they never enforce it). Doing so belittles the accomplishments of those that have been certified by the State as being actual engineers. In my role, I would disagree with this statement. My job roles push me far beyond merely 8220coding8221. Specifically, one of my roles is to 8220engineer8221 new application models, scientific research, validation, implementation. These tasks move me far beyond simple software development roles. The developers (we can them 8220developers8221), that work for me, are NOT software engineers as they are not intimately involved in the 8220engineering8221 aspects of our software development projects. Whereas, one of my roles is specifically to 8220engineer8221 these applications, often times employing cutting edge architectural techniques and unique systems integrations. We have 8220software developerscoders8221 here, but we also have 8220software engineers8221 here as well, I am one of those engineers. I think the disconnect here is, most people do not fully understand the world of computer processing and that the subject encompasses. There are times when that world is very vast and requires intimate knowledge and discovery on a vast variety of technical disciplines (ie: engineering). Im definitely NOT a software engineer, and only programd a bit of PASCAL in the day, but I have a descent grasp of what is meant by poor coding. However, it would be nice if someone could give examples of poor coding and show how it affects the outcomes to modeling programs. It would be nice to actually see example of where the lack of skill (a Mannian term) affects the outcome of these climate models. Poor coding affects the output because it8217s impossible to read the code and follow the logic. In other words, you can8217t verify the model was coded correctly. One aspect of software engineering is unit testing (see en. wikipedia. orgwikiUnittesting ). Unit testing helps determine the model works as designed but does not help determine whether the model is designed correctly. The only way to verify the output of these models is to compare the results against the observed climate. Unless you8217re grading on the curve, I don8217t see that the models hold up really well. And how do you verify the output of climate models that project the climate for the year 2099 You have to wait until the year 2100 to validate the model much less time is needed to invalidate. In modelling when there are unknowns, we are often conservative to cover our asses, but we also have to bear in mind we don8217t want to over design or we will cost our client extra , we have to stay within reasonable bounds but allow for the worst that might be expected. I. e. if designing a reservoir, we have to look at the worst storm possible and assume the catchment is nice and saturated, but we dont design to a storm that is improbable as that would waste money. We have to carefully assess the suitable storm and ensure it isnt unrealistic. I wander if climate modellors put a limit on how conservative their assumptions are I mean, clouds causing warming, 13 ocean evaporation, 20kph glaciers, co2 warming the sea etc8230 etc8230 when these all come together do they represent a highly unlikely outcome or a realistic outcome Personally I like the Idso equation as its the only one empirically derived. When it comes to GCM8217s (general circulation models), I really believe that 8220software engineers8221, along with software developers, is precisely what is necessary if one wants to truly attempt to computer model something as complex as our climate. The task of developing software so complex as this, ultimately demands not just software developers, or coders, but in fact real 8220software engineers8221. Software engineers to determine what technologies employ, determine how those technologies will be employed, determine every aspect of the project design, determine who will play what role in and at what stages, how development processes and methodologies will be utilized when and by whom, all of these things that are required to successfully develop a software product and see it through its SDLC (software development life cycle). It seems to me that software development project such as this would likely demand new architectural application approaches. Develop and utilize new design patterns, new application modeling techniques, the things that 8220software engineers8221 do. To me, a climate model just screams of cutting edge technology approaches such as this. Old-school FORTRAN just doesn8217t seem appropriate in this case. Its like trying to build a rocket to Mars using pixy stix. You might be able to do it, but the likelihood of success or desired results, would be rather low. As one with a chemical engineering degree, I really despise it when people decribe themselves as a software engineer. I came up through the ranks in the 70s when quite a few coders were also hardware engineers. I was one of them. I do take exception to the statement that 8220software engineering8221 is not real engineering. Ask the aerospace guys (me, me) or the medical eqpt. guys if that is true. Degrees and professional exams are not the measure of all things engineering. Otherwise it would have been a University Professor and not James Watt who brought the steam engine into the modern age. BTW this hardwaresoftware engineer (non-degreed) had a government inspector look over his code and the inspector said it was the best written code he had seen in years. My secret The naming of parts. If you get the names of things right the code reads almost like English and even a non-coder should be able to get the gist of it. I did do my work in FORTH which is a great help in making the code readable. But if you are not a disciplined software engineer FORTH makes it much easier to do unreadable code. So it cuts both ways depending on the skill and discipline of the engineer. We have the example of hardware engineers. You give them a pile of steel and other metals, etc. and they will build you an engine. However, there are no restrictions on how the materials can be used. It is up to the engineer to make the right choices. In 8220modern8221 coding languages the effort is to make the compilers and tools cover for (prevent) errors. Such restrictions also prevent you from doing a lot of useful things easily or at all. All very nice if you are going to employ a bunch of mediocre codersengineers. But you then wind up with a bunch of mediocre code. In everything. Just think of how long it takes Windoze to load. So my point 8211 if you don8217t trust your software engineers the answer is not training wheels. It is better engineers. There is no substitute for talent and discipline. BTW PHDs can code well if taught the discipline. If they are apt students it only takes a couple of weeks to train them. If they are not apt they shouldn8217t be coding. R S Bridges (08:55:35) : 8220As one with a chemical engineering degree, I really despise it when people decribe themselves as a software engineer. They are no more an engineer then the guys who pick up my garbage, who are also known as sanitation engineers. From Wikipedia, engineering is defined as The creative application of scientific principles to design or develop structures, machines, apparatus, or manufacturing processes, or works utilizing them singly or in combination or to construct or operate the same with full cognizance of their design or to forecast their behavior under specific operating conditions all as respects an intended function, economics of operation and safety to life and property. Last time I looked, software engineers do not have to take an engineer-in training (EIT) exam or a professional engineering exam. A more appropriate description for our friends who write programs may be software code developer.8221 Hear, hear Another definition of Engineer, from California8217s Business and Professions Code 6701: 8220Professional engineer,8221 within the meaning and intent of this act, refers to a person engaged in the professional practice of rendering service or creative work requiring education, training and experience in engineering sciences and the application of special knowledge of the mathematical, physical and engineering sciences in such professional or creative work as consultation, investigation, evaluation, planning or design of public or private utilities, structures, machines, processes, circuits, buildings, equipment or projects, and supervision of construction for the purpose of securing compliance with specifications and design for any such work.8221 Rod Smith (09:48:05) : As an old very old programmer who has many times been forced by Federal contract requirements to code AND DOCUMENT to Federal Standards, some of which were (to use a polite word) absurd, why is it that Federal Employees dont have to meet these same standards And why is anyone still coding in Fortran All the FORTRAN code makes the output appear to be 8216scientific.8217 Unfortunately most programmers take the attitude that code is self-documenting, when it is no such thing. Well written code IS mostly self documenting. It all depends on choosing your words very carefully. The government inspector who looked at my code and liked it had no complaints about the lack of commenting (there wasn8217t a lot of it) because the code WAS self documenting. That was back in 821779 and I WAS using techniques that did not become widely used in programming for another decade and a half. All this from a non-degreed (electricalelectronic) aerospace hardware engineer who went into coding out of necessity. So why was my stuff well above average for the time period involved I cared. I was not just interested in 8220it works8221. I was also interested in elegance and beauty. BTW I don8217t think you can be a good codersystems engineer without a deep understanding of the underlying hardware. Also a deep understanding of the domain is essential (if only for picking good names for things). Now a days most coders are fairly ignorant of the hardware they are working on and even more so of the domains they work in. Roger Sowell (13:15:05). You are talking about the LEGAL definition of engineer not the practical definition. A confusion of domains. Roger Sowell (13:15:05) : Hear, hear Another definition of Engineer, from Californias Business and Professions Code 6701: Professional engineer, within the meaning and intent of this act, refers to a person engaged in the professional practice of rendering service or creative work requiring education, training and experience in engineering sciences and the application of special knowledge of the mathematical, physical and engineering sciences in such professional or creative work as consultation, investigation, evaluation, planning or design of public or private utilities, structures, machines, processes, circuits, buildings, equipment or projects, and supervision of construction for the purpose of securing compliance with specifications and design for any such work. Again, just describes my professional role as a 8220software engineer8221. gtgt Mac (08:26:46) : Ive written my own NASA-like climate model software 10 Rem Global Climate Model 20 Print The End Is Nigh 30 Goto 20 40 End (of planet) ltlt This is the only example of code in the entire thread. The 8220End8221 statement is usually a compiler directive and not an executable statement. However, most compilers will execute a return at this point (and not terminate or stop the machine). A main program will return to the operating system. Statement 8220308221 is an example of an infinite loop8211you can never reach statement 8220408221 or exit the loop. It seems appropriate. No matter how much hype we hear about global warming, we will never leave that infinite loop about the coming doom and never reach the 8220End.8221 Too much value is assigned here to 8220coding quality8221. That may be an issue concerning costs of maintenance and further development of the application. But it is not related to the OUTCOME or calculated result of the system, or quality of the results. What interests us is 8211 if the calculations are correct. Code quality is irrelevant. You must always check results against some independent benchmark 8211 like say 8211 measured observations. Whether the code styling is nice or not, does not matter. If you cannot test the result in an independent manner, you can never debug the code and make it work correctly. No amount of 8220good8221 software engineering can guarantee that the results are correct. It is impossible to develop and debug code if you have no independent yardstick to evaluate the results by. M. Simon (13:04:11) : . BTW PHDs can code well if taught the discipline. If they are apt students it only takes a couple of weeks to train them. If they are not apt they shouldnt be coding. A couple of weeks huh Perhaps back in the 708217s. it seems you may not have much experience with modern day development processes. It would take a couple of weeks just for them to learn the source control management aspects alone. I would be willing to bet that not one of those individuals would be capable of coding on my current project within a year, perhaps even two. As a working software engineerconsultant, I can tell you that poor code is the norm. If more programmers knew what they were doing, I would have to find other work. Software engineers do not have a professional licensing requirement. That means the quality of their work is all over the board. Anybody can claim the title of 8216software engineer.8217 In many companies, it8217s the job title that replaces 8216programmeranalyst.8217 Having a degree in Software Engineering or Computer Science is not a guarantee of the quality of a person8217s code. I have met many self-taught programmers who write excellent code and many degreed professionals who just copy and paste and patch their code after it8217s put into production. The difference is in the attitude and aptitude. A person who takes pride in their work strives to write good code. They want to improve and when they don8217t know how to do something, they learn it instead of throwing out one bad hack after another. Take the example of Boeing. They had a nice software model, that certainly helped a whole lot in the design process. Still the result had to be tested in a prototype, where actual stress measurements were made. An error was found that could not have been discovered by 8220good8221 software engineering, only by actual measurements. The software will be corrected, and be more useful in the future. Software that cannot be tested cannot be developed to a high degree of reliability. Good coding practices alone are never sufficient. I also qualify as an engineer (chemical) who was required to learn and then write software in FORTRAN. My field was chemical plants and petroleum refineries, in which we wrote some very complex code. This code was done well, and was robust, and was subject to annual updates revisions, and was sold as a commercial product throughout the world. Nothing magic in this, we simply understood our field, and FORTRAN. The code had to execute on machines in Japan, Europe, Canada, the US, South Africa, and the Middle East. After years of writing debugging enhancing the code ourselves, we hired a computer science major and had him do the programming. We spent more time explaining things to him than if we had simply done the job ourselves. Management thought we were so progressive, though, in having a professional code-writer. It also enhanced our marketing when we could say the code was professionally written. Someone earlier asked why do people still code in FORTRAN, and this reminds me of a similar thread earlier on WUWT. Because it is an excellent language for engineering. There are literally millions of lines of excellent FORTRAN operating every day in engineering applications. No one in their right mind would consider re-writing all that perfectly good code. Someone said: 8220The model results reflect the assumptions of the authors of the model8221. That would be true if there were no errors (bugs) in the code. As it is 8211 the models reflect nothing. Their result cannot be treated as anything but random, since we have no independent way of authenticating them, therefore we have no way of debugging the code. 8220I recall reading on the web an interview between some climate modelers, and I was struck that they were talking openly and consciously about their models flaws.8221 The discussion you recall may be this one I8217m curious Do you think your definition of 8220software engineer8221 fits with what the needs are for building a climate model I think it may, since it requires much more than a coder, which is why the scientists probably decided to do it themselves in the first place anyway. By your definition, I believe I would be called an engineer. But we will have to disagree on the term software engineer. This company has folks that do everything you mention, and none of them are called software engineer. With all due respect to scientists and engineers 8211 leave the coding to the professionals. We set up 8220sandboxes8221 where we let the PhD8217s play where they wouldn8217t hurt anyone. I was a professional (got paid to do it) programmer during the mid 1980s when a lot of this code was written. I would say ModelE is not up to industry standards of even the 1980s. Our code was much better documented. This problem reminds me of the Therac-25 software incident: en. wikipedia. orgwikiTherac-25 that got a lot of play in the IT trade press of the day. A radiation therapy machine somehow dispatched lethal doses of radiation because of a software glitch caused by a certain set of operator instructions. 10 Rem Global Climate Model 20 Print The End Is Nigh 30 Goto 20 40 End (of planet) ltlt Better program 10 REM Global Climate Model 20 ON ERROR GO TO 40 30 PRINT AT INT (RND 21),INT (RND32)8221The End is Nigh8221 40 GO TO 30 But the RND function is no good since it repeats itself in about 15 times, better take the value of the random SEED generator directly with the aid of a PEEK command. 10 REM Global Climate Model 20 ON ERROR GO TO 40 30 PRINT AT INT (PEEK (16434)21),INT (PEEK (16434)32)8221The End is Nigh8221 40 GO TO 30 Oh my god how long has it been, to long i guess and one thing comes up, that even small and relatively simple program8217s do require some debugging, good software takes time, but even then if you feed it with garbage data, it will result in output that is still garbage. Real engineers There seems to be a misunderstanding regarding engineers. I use headhunters to hire people and they aren8217t confused. Engineering degress are granted by schools of engineering. None of this M. S. in Information systems from church schools. You have an engineering degree from an engineering school or you do not. Microsoft and some other vendors claim to produce them. كلا. Not the real thing. (I cut slack for railroad engineers, they have had that handle and don8217t hold themselves out to have a real engineering degree.) Head hunters also tell me if it is a compromised degree such as B. S. In Engineering Technology. Not as much as a real engineering degree. This excludes the DeVry Universities and some BS computor science degrees. There are real computor engineering Degrees. There are several hundred Engineering School campuses. Sounds like the next project after SurfaceStations wraps up. Never Today USHCN, tomorrow GHCN 8220Just perusing that programming lauguage-it has been more than 30 years since Ive seen FORTRAN is it me-do I see some sort of deliberate loop if you will in the way it it written Im no programmer but have downloaded a couple of different wildlife studies in FORTRAN and got caught in a garbage in garbage out - GIGO scenario that dang near got the whole study shut down.-after 3 years of hard field work This GISS thing makes me wonder8221 And it feels Like I been here before Feels. Like I been here before And you know IT sic makes me wonder What8217s goin8217 on Under The ground The following, from The Future of Everything originally entitled Apollos Arrow: The Science of Prediction and the Future of Everything by David Orrell, pg. 324), WRT climate models in particular, is apropos relative to global climate models (CGMs) and Gary Strand8217s contention at climateaudit. orgp6495 that it8217s the science not the software development: 8220Einsteins theory of relativity was accepted not because a committee agreed that it was a very sensible model, but because its predictions, most of which were highly counterintuitive, could be experimentally verified. Modern GCMs have no such objective claim to validity, because they cannot predict the weather over any relevant time scale. Many of their parameters are invented and adjusted to approximate past climate patterns. Even if this is done using mathematical procedures, the process is no less subjective because the goals and assumptions are those of the model builders. Their projections into the futureespecially when combined with the output of economic modelsare therefore a kind of fiction. The problem with the models is not that they are subjective or objectivethere is nothing wrong with a good story, or an informed and honestly argued opinion. It is that they (GCMs) are couched in the language of mathematics and probabilities subjectivity masquerading as objectivity. Like the Wizard of Oz, they are a bit of a sham.8221 The hardest part of understanding the models will be the physics in them rather than whatever programming language they are written in. I suspect therefore primary focus is on that and the programming is secondary. If I were to build a financial model with the same results compared to observations as these climate models, I would be fired. Unless, of course, I was modeling the housing market for a mortgage guarantee pseudo-government corporation. In that case I would get a bonus. Orwell is laughing. William Woody (10:32:26) : has it just about right. I LIVE in FORTRAN 8212 and I8217m not underpaid. I was literally up until 2am last night coding an FFT post-processor in FORTRAN. I have a customized version of the old Personal Editor that converts FOR to F90 fast. The LF95 compiler makes FORTRAN the best for serious number crunching. This old code doesn8217t look that bad to me. I DO NOT have time to fiddle with it this week but, with only one or two small miracles, will have time in a week or two. I8217ll try to convert it to something readable. I wrote my first code in 1963, in a language called SPS. Then Autocoder, Fortran, RPG, COBOL, Basic. (and now HTML) But I stopped being a programmer because I realized that it was nothing but being a slave to the system So I became a systems analyst. But I stopped being a systems analyst because I realized that it was nothing but being a slave to the guy holding the money So I became one of those guys with the money. And I made a lot of money because I remembered what it was like to be a slave to IT and them that hold it. THATS WHERE PROBABLY EVERY PROGRAMMER OF GLOBAL CLIMATE MODELS IS AT, A SLAVE TO WHATEVER ANSWERS THE GUYS WITH THE MONEY WANT TO SEE. However, I believe what every one of them knows, but would NEVER admit to, is that no digital computer, no matter how perfectly programmed will ever be able to model the super complex ANALOG system we know as 8211 global climate. Will there ever be a computer (and language) capable of such Probably, but itll be a Bionary (remember you read it here first) unit. device. that will be based in nano-biological functionality and be capable of self-correcting its programming as it runs processes and finds out-of-bounds anomalies through out the steps therein. And these steps (functions) will not be limited and set mathematical increments, they will be analog at their core providing an infinite range of conditions and interaction within themselves. Even with such a device it may not be possible to model the global climate or at least not for a long time. Why Because we do not even know WHAT WE DO NOT KNOW We dont know enough about the oceans, clouds, dust from land, dust from space, CO2 dispersions and concentrations, and even the that big bright ball in the sky to fill a small bit bucket, much less feed into a computational device and expect that some lowly programmer has somehow written the code of century that is going to spit out what the temperature at 6ft above the ground is going to be at the corner of 5th and Main in Timbuktu at 3:31am on the 14tn day of July, 2077. And with historical record of any of the above (and more) how could we ever test to reality what we created I can program a computer to whistle Dixie while dancing an Irish jig and tell you that in 10 years youll be 10 years older if something doesnt happen. That doesnt mean the computer was built in Ireland or programmed at Georgia Tech, or make me a scientist. AND it doesnt somehow magically put into my hands the data I need to RUN THE MODEL. You can have the most powerful computer physically possible (even a Bionary one) and the most sophisticate language and genius of an analyst and of course a master coder and without the RIGHT data, YOU GOT NOTHING. 8220And with historical record of any of the above82308221 That should be - And without a historical record. Steve in SC, if you8217re referring to my comment as 8220disparaging8221, I didn8217t mean it that way. I wrote: There is a difference between someone writing code using established methodologies and someone who taught themselves and gets mired in an oversized project. Many times I have had to clean up after people who got bogged down in something bigger than they can handle. Part of the 8220established methodologies8221 I refer to include stepping back and seeing the big picture, then breaking down or modularizing into sections, then concentrating on building functionality for each module or section, then optimizing. Most self-taught programmers are very good at one or more of these steps, but few do all of them. Obviously, since I8217m writing this, I like to think I am one of those, at least I keep getting called back and others who follow my work are never wading through several feet of muck to get where they need to be. Either way, I8217m trying to summarize what many have also tried: NO, it8217s not all about the code. Sure, it8217s about the physics. However, without the code to support the physics you have muck, you can8217t verify or confirm accuracy, you can8217t test anything, and you have a horrid time making any changes. The whole point of spreadsheets, for example, was to take programming out of the picture and allow those who worked with numbers to just go ahead and plug in numbers. Yes, programmers were involved, you just didn8217t see them. VisiCalc and Lotus 1-2-3 created something of a revolution by letting the numbers and formulas people just work with numbers and formulas, and not have to fight with the computer as well. Maybe we need to see the development of an independent, publicly accessible, open source GCM, and allow people to share their tweaks and assumptions. Surely then we could come up with a better model. (yes, I know the current group don8217t actually WANT a better model) Mike Bryant (16:54:01) : I miss Gary Strand He should be commenting here 8220Yes, he should be. But Mr. Strand is hiding out.8221 Gary has been over at climateaudit puffing up and obfuscating. 8220These codes are what they are 8211 the result of 30 years and more effort by dozens of different scientists (note, not professional software engineers), around a dozen different software platforms and a transition from punch-cards of Fortran 66, to Fortran 95 on massively parallel systems.8221 8211 Gavin Schmidt, RealClimate. org The difference between a natural scientist or engineer (non-software) and a computer scientist: A natural scientist or engineer will get bad code to compile and get some sort of output then declare a scientific conclusion based on this. A computer scientist understands there is more to it than that. John Galt (14:11:13) : 8230 Having a degree in Software Engineering or Computer Science is not a guarantee of the quality of a persons code. I have met many self-taught programmers who write excellent code and many degreed professionals who just copy and paste and patch their code after its put into production. The difference is in the attitude and aptitude. A person who takes pride in their work strives to write good code. They want to improve and when they dont know how to do something, they learn it instead of throwing out one bad hack after another. Too true I have run into this time and time again. I cannot count the number of people I have encountered that have Masters Degrees in Computer Science that are either complete hacks, or simply don8217t know their rear end from a hole in the ground. Always makes me laugh. Want to impress me Don8217t show me your papers, that won8217t do it8230 Lee (08:22:00) noted: 8220The last piece of code that worked without any unexpected errors was 10 Print Hello 20 Goto 10 But I thought it has already been agreed, Lee, that the 8220108221 was a typo as it was meant to have been 8220Hell8221 Real engineers There seems to be a misunderstanding regarding engineers. I use headhunters to hire people and they arent confused. Engineering degress are granted by schools of engineering. None of this M. S. in Information systems from church schools. You have an engineering degree from an engineering school or you do not. Microsoft and some other vendors claim to produce them. كلا. Not the real thing. (I cut slack for railroad engineers, they have had that handle and dont hold themselves out to have a real engineering degree.) Head hunters also tell me if it is a compromised degree such as B. S. In Engineering Technology. Not as much as a real engineering degree. This excludes the DeVry Universities and some BS computor science degrees. There are real computor engineering Degrees. There are several hundred Engineering School campuses. I would have to agree with this. I personally attended a University, 4 year Bachelor of Science degree, from an accredited engineering and agricultural research University. Many of my courses shared those with EEE students (Electrical and Electronic Engineering), especially Mathematics, Physics, Chemistry, etc8230 Our 8220Computer Science8221 curriculum was very much in line with the Engineering disciplines. I do not consider MIS degrees and all their various permutations, any where near to the class of a real CS degree from an engineering College or University. They simply are not compatible with one another. Perhaps this is where part of this breakdown is when using the term 8220Software Engineer8221. There truly are 8220Software Engineers8221 out there (I am one). I would say this is far more the exception than the rule when speaking in general terms of 8220Software Development8221. There is definitely a very sharp contrast between a 8220Software Developer8221 and a 8220Software Engineer8221. The latter requires a much larger toolbox. Incidentally, my personal professional title is, and has been for a long time, Sr. Software Engineer. This same title has followed me for many years, even throughout my years working government entities as the DOD, DHS, Pentagon, Navy, and various defense contractors. Chris Reed (17:41:37) : 8230. As a Meteoroloist, I learned to look at the model as a tool. Precisely. You could not have said it better. I cannot count the number of times I have had to remind people that any computer program, computer programming language, etc8230 IS JUST A TOOL And like any tool, can be used properly or improperly. The term 8220use the right tool for the right job8221 comes to mind8230 We really have been to this movie before. The Strategic Defense Initiative 8216Star Wars Project8217 of Pres. Reagan suffered perhaps its most serious blow when: 8220On June 28, 1985, David Lorge Parnas link resigned from SDIO8217s Panel on Computing in Support of Battle Management, arguing in 8 short papers that the software required by the Strategic Defense Initiative could never be made to be trustworthy and that such a system would inevitably be unreliable and constitute a menace to humanity in its own right.8221 Remember We could not show, using computer science protocol already well-established more than 30 years ago that the code-base for SDI could meet a 8220necessary and sufficient conditions8221 mathematical analysis. This is an example of what 8220software engineering8221 really isis about, and is at least roughly analogous to finding the harmonic modes of Galloping Gerdy, before it falls into the Tacoma Narrows). The SDI code-base made today8217s NASA GISS model E, GISTEMP et al look like a school teacher8217s classroom management program. We were capable of using mathematical logic to determine whether the SDI software was actually internally consistent amp coherent 8230 and could show rigorously that it was not. There is nothing inherently wrong with Fortran. On the contrary, Fortran work is currently important: it is still the Speed-King of high-level languages, and in plenty of 8216raw-computing8217 applications, maximum computation speed is absolutely the bottom line. There is also nothing inherently wrong with old algorithmsroutines. The vast majority of all the algorithms we use are, unavoidably, old. There is actually an advantage to using Grandpa8217s code-routine, since it has been hammeredtortured in more ways than some new-fangled method. The problems with Model E, GISTEMP, etc code-bases aren8217t that parts of it are in guffaw Fortran (there is a modern-language conversion-effort underway), or that the routines are hoot 3 decades old, but that these code-bases are not being managedmaintained appropriately. Why not Why isn8217t this stuff taken care of properly, or subjected to analysis-procedures that can prove whether it8217s water-tight or not Because key people don8217t care. Because at the levels that count, it8217s not important. Remember, Congress cared whether SDI software produced GIGO, or actionable conclusions. Neither Congress nor the White House care if the GISS codes make good sense or not. Key climateweather dataanalysis is performed by Pentagon amp Intelligence departments amp agencies. NASAGISS is a dog amp pony show without weight or leverage. Nobody particular cares if their software can even run, much less can be used to say anything verifiably scientific. The President pays no attention to the NASAGISS climate work, but he consults with the Pentagon liaison daily. NSA hovers just off his elbow, 8217round the clock. Despite Dr. Hansen8217s finest theatrics and personal letters to the White House and other Heads of State, Pres. Obama studiously ignores him. NASA8217s climate-work is sub-par, and redundant. Even if their efforts were well-managed, they are woefully antiquated (20 years behind PentagonNSA) and under-staffedfunded (by orders of magnitude), compared to the military and intelligence projects that our top leaders actually use to make 8216best-science8217 decisions. It is full of RATFOR. I haven8217t seen RATFOR since the 808217s. If you are still coding in FORTAN much less RATFOR you probably should look to retire. FORTRAN is still a little faster than C on the numerical calculations but given multi-threading, etc. It gets blown away. This thing is junk. It8217s full of arcane crap that that ensures job security. If Milton from Office Space were a programmer, this would be his work. I remember a guy who worked maintaining listing for the Yellow Pages. Back when large drives were measured in megs, he built a several gig flat file database. Trouble was he used to drop acid when he coded. No one could figure out how it worked. That said, I think his code was better than this garbage. It is typical government coding. I advocate that we spend some of the stimulus money to get them Fisher Price keyboards. That way they can think that they are working, but not cause any real harm. I was discussing some of these things with one of my software developers today. A major function of our job includes the translation of human processes into computer processes. There are engineering aspects to this, there are also creative aspects to this. These translation processes are not blank and white and can sometime require drawing from a vast array of disciplines and experience. Again, in this arena, I am rarely impressed by someones paperwork. Some of the best software developers and software engineers that I have met, have been your classic academic rebel (I being one of those), and rarely posses impressive credentials. Books are one thing, practice is another. Agreed. Numerical coding is a bit different from systems coding, however. Without a good background in math or applied mathematics, model coding tends to go astray. It should be noted, however, that 80 of the work in most models is the shuttling, reading and formating of data. Numerical programmers tend to be lousy at that work, as evidenced by this code. Did you read any of this stuff It8217s like steam-punk coding. I feel like I should get out a leisure suit to look through it. I realize that it8217s government and they can8217t afford anyone of quality, but is this some kind of retirement program for failed programmers Ted Clayton (22:58:31) : 8230 There is nothing inherently wrong with Fortran. On the contrary, Fortran work is currently important: it is still the Speed-King of high-level languages, and in plenty of raw-computing applications, maximum computation speed is absolutely the bottom line. I would agree, as FORTRAN is just another tool. Is it really the speed king I would argue with that. C or C typically compiles to much more efficient assembler code than does FORTRAN. Further, some versions of Pascal compile to even more efficient assembler code, one of the best being the good old Borland Turbo Pascal, which would compile to about the same compact and efficient assembler code as CC, but had the speed advantage of passing parameters through registers rather than pointers to memory heap allocations. Borland Pascal used a very efficient way of utilizing registers and stacks rather than heap memory allocations. I am not saying that FORTRAN is poor, it is not, but I don8217t know that I would give it the blue ribbon for efficiency either. I spent several years hand optimizing assembler output from a variety of source compilers and in my experience, CC, Pascal and even Modula II typically out performed most all other languages. Metrics from clock cycle testings and audits would confirm this at the time. If I were to build a climate model: 1) Gather up the brightest minds in physics, chemistry, climatology, all the necessary science disciplines required to understand the physical processes involved. 2) Gather up a good team of 8220Software Engineers8221 to design and develop the technologies to be applied and how to apply them. Use the engineers to 8220engineer8221 the development processes, application architecture, integrations, etc8230 3) Gather up a strong team of 8220Software Developers8221 (ie coders) capable of witting quality code, implementation, and unit testing individual portions of tasking as designed by the 8220engineers8221. 4) Gather up a strong team of 8220translators8221 or 8220communicators8221 capable of communicating between the 8220scientists8221 and the 8220engineers8221. Software engineers and physics scientists don8217t speak exactly the same language, assistance is needed here to translate one discipline to the other. I would employ a team of people skilled at this practice. 1) Engage a peer review coding cycle processes 2) Engage proper source control management processes 3) Engage proper QAQC and validation processes 4) Engage proper release management processes Last I checked FORTRAN was still faster on certain numerical calculations, but I agree with you. Who cares on such small differences. The big issue here is maintaining and working with the code. This is classic FORTRAN full of cryptic variable names that are less than 8 characters. It really is old school. How do you even verify that this code is performing correctly. It is over 100,000 lines. No unit tests, no subroutine test drivers. It would take a long time to get your head around all the interactions in the sub-models. One good advantage is that it has formating for line printers. So it8217s got that going for it. Which is nice. Allan M R MacRae (18:24:23). Im glad you brought up aerosols. Something has been bothering me. The alarmists say aerosols cool, but some clouds warm. But, isnt a cloud in fact an aerosol The particle size can vary from the CN to a large hail stone, but most of it is an aerosol, no If aerosols cool, shouldnt also clouds that have not progressed to precipitation. (I realize clouds bring a lot more to the table that that, but the aerosol thing has been bothering me.) Good questions Jim, and we need someone better qualified than me to adequately answer them. Maybe Doug Hoyt will step in. According to Wiki, I guess you are correct 8211 clouds are aerosols: 8220Technically, an aerosol is a suspension of fine solid particles or liquid droplets in a gas.8221 I have read much about clouds and aerosols, and my impression is that the two are generally considered as different categories for climate model purposes. Clouds can form from water vapour, a potent greenhouse gas, and vice versa, so clouds could exhibit more complex behaviour in this regard than other aerosols. I have also read that high-level clouds and low-level clouds can have opposite effects wrt warming and cooling. This I have to take with the usual grain of salt, as I haven8217t read much that supports these views. I guess you are aware of Svensmark8217s hypothesis that cosmic rays seed low-level() cloud formation, causing cooling. I can accept that low-level clouds cause cooler temperatures than would occur under clear skys during daylight, but it seems to me that at night the low clouds trap heat and reduce the rate of overnight cooling. Aerosols from major volcanic eruptions are known to cool the Earth, and these consist of sulfates, particulates, etc. All this is rank speculation on my part as I have no time to prepare a proper response. I8217ll ask Doug Hoyt if he wants to comment. Back in the mid 808217s, I was briefly involved in a project with the Chem. department or my University, and one of their research projects. The Chem. dept. is infamous for gobbling processor time on any machine. They were frequently awarded grants from IBM that included the use of newly developed technologies (ie: super computers) of the time. One such computer was the IBM 9000 series Vector Processor machine. My role was to assist in the performance optimization of critical computational components. All of the original code was written in FORTRAN. To achieve our goals, we broke out critical portions and rewrote those components using C which incorporated a lot of hand optimized in-line assembler code. Our results were rather astounding, with an average performance improvement of around 1700-2000. This was pretty significant. In this example, I would say that our C implementation blew away the computational performance of standard FORTRAN, but to do so wasn8217t exactly easy either. There are two core problems here. The first is triage. Get this POS cleaned-up. Break the data from the model. Separate data layer from model layer and from the results layer. This work is straight-forward but dull has hell. A few days in you8217ll be using the Clockwork Orange eye openers to keep going. It is a necessary first step, however. get it stabilized and documented. I realize that a good deal of documentation exists, but unit tests and regression testing on the model components needs to be in place. There really is nothing quite like a large-scale, non-linear model without regression tests. The second stage can follow traditional development techniques like you have outlined above, but you have to get this thing into a malleable form. Yes, I swung the praises of Fortran just a bit wide. -) To go on amp on in Fortran for housekeeping chores isn8217t nice. I perused the NASA Model E upgrade project pages about 6 months ago, and saw that a major problem is the use of cryptic, short variable-names. Git out. Now, that8217s a maintainance chore that shoulda got done about a standard career back. For the most part, Fortran is only going to be 8216in the way8217, agreed. Where the aim is to really come to grips with Formula Translations, though, it might have an edge (not that Models, as noted, are doing computationallynumerically-limiting stuff in most of the routines). And, I8217m not as current on language-issues (a socially-acceptable 20th C. substitute for religion-arguments ) as I would have been a decade (2) back8230 But I do see on the handiest reference: 8220Since Fortran has been in use for more than fifty years, there is a vast body of Fortran in daily use throughout the scientific and engineering communities. It is the primary language for some of the most intensive supercomputing tasks, such as weather and climate modeling, computational fluid dynamics, computational chemistry, computational economics, and computational physics 5 links. Even today, half a century later, many of the floating-point benchmarks to gauge the performance of new computer processors are still written in Fortran (e. g. CFP2006 link, the floating-point component of the SPEC CPU2006 link benchmarks).8221 Like Burke (23:27:06) says, for the right crunch-jobs, it8217s evidently still it. Yes, a climate-modelling team-approach like you describe, or a modern-Celtic OSS approach could rapidly put the computationalmodelling portion of climate-investigation (it still needs a huge, ongoing investment of actual, physical science) on a good footing. Dr. Hansen is stuck in a (faulty) loop. 8220In addition to being complex the climatology models are and are supposed to be constantly changing as they learn more of the natural forcings at play. To suggest they should be required to stop now and re-write the code from scratch is shall we say not very reasonable. Pete Wow8230. Pete, do you really believe that just stacking more useless wrong data on top of bad code, on a already WRONG Theseus is the correct thing to do I mean Wow8230. You say that code will change with more knowledge on natural forcings823082308230 well if the forcings are not known by any person on this planet at the time of the code writing, how do you compensate for that big of error in knowledge of the code eg. If the earth is said to be flat after extensive scientific study, and then proved wrong, how do you think you might adjust to that realization8230. Hmm, my question82308230 shall we say not very reasonable. The models they are working with appear to have been proven fairly accurate over the last 20 years. This video contains some historical perspective of climate models The bottom line Pete, modeling climate is delusional and that video is a crock. You say models have been accurate for 20 years, but not one predicted the cooling that has been going on in the last 10 years and ZERO mention of a one whole degree of drop in mean temperatures in the last 3 years. Really, a heating of .7C in a century and then a drop be 1C in the last few years is a big forcing. Sooo, out of control CO2 heating doesn8217t seem to exist, but in a computer model. Phillip Bratby (09:46:34). My experience of Fortran coding from many years ago was that to make sense of it and for purposes of verification, somewhere between 20 and 50 of the code should be comments. Without having the time to look at the code, can anybody tell me how much of the code is made up of comments Well, nearly zero. Taking Step2 as an example, it has about 1319 lines of code (the result of: : WeatherModelsGIStempSTEP2 chiefio cat wc - l 1319 ) of which 15 have a leading 8220C 8221 WeatherModelsGIStempSTEP2 chiefio. wc - l grep 8220C 8221 wc - l 15 And just to show you how helpful those 15 lines are, here they are: PApars. f:C unit PApars. f:C Input files: 31-36 ANN. dTs. GHCN. CL.1 8230 ANN. dTs. GHCN. CL.6 PApars. f:C PApars. f:C Output file: 78 list of ID8217s of Urban stations with PApars. f:C homogenization info (text file) PApars. f:C Header line is added in subsequent step PApars. f:C KM the number of time frames per year PApars. f:C 121 LEN(IS)ILSR(IS)-I1SR(IS)1. (counting gaps also) invnt. f:C WRITE(6,) ITRL(3),INFO(6)IYR0,INFO(6)IYRL-1 texttobinary. f:C print, line(1:64) texttobinary. f:C print, line toANNanom. f:C do i1,ndim toANNanom. f:C write(,) i, idata(i) toANNanom. f:C end do toANNanom. f:C if(ndim. gt.0) stop 11 As you can see, the bulk of them are chunks of commented out code8230 IMHO, having read all of the GIStemp code, it is crap. The comments are at best unhelpful. It is a 8220hand tool8221 that expects manual intervention at several points. It is NOT a production product and I would fire the person who came to me with this level of code and said they were ready to ship. (I have managed production of software before and shipped product repeatedly, including the compiler tool chain for GNU aka RedHat8230) Oh, and to the guy who said software writers are not engineers: Please talk to the the ENGINEERING department that awards ENGINEERING degrees in Computer ENGINEERING at major universities8230 My Computer Science friends with ENGINEERING degrees from places like U. C. Davis, UCB, UCLA, Stanford, and CalPoly S. L.O. would not agree with you8230 nor would I, having employed said engineers to write code in the Engineering Department at a couple of name companies that created the computers you use8230 One of my engineer friends wrote the software that lets the B1B fly (his code controls the tail surfaces). You don8217t think that8217s engineering Try flying the B2 without the software8230 (HINT: You WILL crash. Fast.) Back on the 8220hand tool8221 style of GIStemp. From STEP45 we have: WeatherModelsGIStempSTEP45 chiefio grep comment docombstep4.sh: echo 8220or do all compilation first and comment the compilation lines8221 docombstep5.sh: echo 8220or do all compilation first and comment the compilation lines8221 trimSBBX: echo 8220or do all compilation first and comment the compilation lines8221 zonav: echo 8220or do all compilation first and comment the compilation lines8221 Notice that this says to do things 8220by hand8221 if you like and comment out chunks of code that you don8217t like8230 This is NOT production style. This is what is commonly called a 8220Kludge8221. George Tobin (09:01:16). I was unaware that any blame had been directed at GISS software engineers. My understanding was that they were faithfully implementing the bogus sensitivity assumptions and all the rest of that which comprises current climate modeling ideology. George, you are laboring under the assumptions that the code was written by a software engineer and that there was a division between the designer and the coder. The code looks to me like it is largely written by folks who learned programming as a sideline or 8220had a class in it8221 not by professional programmers. (Yes, anyone can learn to program just like anyone can learn to write poetry8230 that does not make you a professional programmer nor a good poet8230) I8217ve read GIStemp front to rear. It looks like it was written by folks who had a FORTRAN class once, years ago (I would guess some of it was written by Hansen himself decades ago8230) and do not make production product for a living. It also has 8220layers8221 that look like kludge added on top of kludge over time. Some blocks are ALL CAPS and look like F77 style (and syntax). Other newer chunks are mixed case and F90 style. In short, 8220it just growed8221 is how it looks. There are exceptions. The Python chunk is more professionally done and looks like it was contracted out to a sub. But most of it, frankly, looks like someone who learned BASIC and then took a FORTRAN class made a hand tool. Specifically, all the FORTRAN is compiled in line, run, then deleted. It is treated as an interpreted language. What few comments there are indicate that the pieces are to be run by hand as you see fit and that if you want to edit the code to change it, well heck, why not Work files are scattered around in the source 8220archive8221 willy nilly and the data files constantly mutate name and function from piece of code to piece of code. Nothing prevents or even encourages preservation of the source code during operation. What part is run in what order is also left as an exercise for the student8230 I am inclined not to read much into this fellows candid assessment. And I think Steve M. was a little over the top implying that the programmer should have communicated his misgivings about the models to IPCC, Congress and the media. The guy who has to translate crappy assumptions from higher higher into workable code should not have to field that kind of issue or get caught in the middle. While I generally agree with your sentiment, you are assuming that there was a division between the designer and the coder. It looks to me, from inspection of the code, like it was written by the 8220designer82218230 in which case one can not expect much in the way of a mea culpa from Hansen8230 John Galt (10:30:55) : Rod Smith (09:48:05). And why is anyone still coding in Fortran I asked that question about FORTRAN previously and was roundly spanked by people who informed me that FORTRAN is still used in the engineering field and is also commonly used on supercomputers. I can only assume Fortran is equally prevalent in science as in engineering. I still question why a more modern, object-oriented language such as C (or even Java) isnt used. Is FORTRAN mult-threaded Having lived through several 8220language wars8221 and written code in more languages than I can remember, I have an opinion about computer languages: IT DOES NOT MATTER. All that matters is that the person writing the code is competent in the language. I8217ve worked in BASIC, COBOL, FORTRAN, PL1, Pascal, C, ALGOL, several 8220non-procedural database languages8221, several scripting languages on Unix Linux machines, programmed several varieties of routers including CISCO in two major variants of their OS, a couple of different assembly languages, and have read Python in GIStemp. Oh, and I once learned APL just to see what it was all about and wrote a few programs in it. It deserves the descriptor 8220write only language82218230 And I8217ve coded some RPG once too. There are a few others but they don8217t float to the top of the memory stack right now8230 like FORTH that I learned once eons ago8230 At the end of the day, you can write good code in all of them and you can write crap in all of them. Some are a little easier to use for some tasks, but an experienced programmer in any of them can use that tool to run rings around an inexperienced programmer in any language. I managed a supercomputer site at one point in my career. FORTRAN was exceptionally optimized on it at that time and C was a new port (mid 821780s). While we wrote a lot of code in C on the Cray, if you had something that really needed to be fast, you used FORTRAN. I doubt if that has changed, simply because there has not been as much money in supercomputers in the 20 years since then (to fund the very large staff needed to make a truly stellar C compiler that would match what had been done with the FORTRAN compiler) as was done in prior years with FORTRAN. Im also told some versions of FORTRAN have object-oriented extensions, but they arent commonly used. Having managed a software development that lead to 4 software patents and was written in C, I still have to say that IMHO object-oriented is somewhat over hyped. Yeah, it8217s 8220neat8221, but not exactly something that obsoletes everything written before8230 It8217s just another 8220neat trick8221 that makes some things easier and some things harder. Good to have if you need it, irrelevant if you don8217t need it, and not NECESSARY if you have a non-object oriented language and a programmer skilled in it. Everybody thinks their favorite language or feature is the big deal. It isn8217t. It8217s what you can do with the hammer that matters, not whos hammer is bigger8230 If software engineers are in short supply, thats a sign that NASA needs to migrate to a more contemporary system. Last I heard, there were a lot of layoffs in the IT field. Surely there are some out-of-work computer science majors who would love to work for GISS I8217d love to get a job re-writing GISS code, but I wouldn8217t want to work for Hansen8230 That said, why would a shortage of engineers argue for a conversion effort that would require hiring more engineers8230 It takes fewer engineers to just leave it alone and run it once a month8230 But the problem I see in the code is not just the way it is written. The bigger issue is that it makes bogus assumptions. Things that are demonstrably wrong. One example: GIStemp assumes that a station 1000 km away can be used to fill in missing data from another station. I can assure you from a half century of personal experience that not only can you NOT use the San Francisco temperature data to fill in for Lodi, but the two are INVERSELY related in summer. The central valley of California heats up, the updraft pulls ocean cool air over SF and brings the fog in. When Lodi gets hotter, SF gets colder and danker. But this 8220pump8221 works with a 3 to 4 day cyclicality and with variable time delays between the inland heating and coastal cooling8230 so you can8217t just assume a naive relationship. It changes dynamically (and GIStemp makes no allowance for this). Does anybody know the hardware and OS GISSTEMP runs on I don8217t think it matters. It needs an F90 compiler. After that the OS and hardware are not very important. The quantity of data and the operations done could be easily handled by a modern PC. It8217s pretty simple processing. My GUESS would be that it runs on a UNIX workstation, probably a Sun of some sort. I saw no 8220Crayisms8221 in the code and nothing tied to a particular platform. It also was blissfully devoid of Microoft isms8230 Last time I was at NASA was a while ago, but then they had Crays, SGIs, Suns, and PCs (and I think there where some HP boxes too). Being a government agency they probably have whatever the lowest bidder offered last cycle8230 I think everything has to either be POSIX or MS Windoze 8230 The way it is written ought to be independent of the OS or hardware. There were no 8220endian8221 problems AFAIK and they didn8217t use much in the way of fancy coding techniques (ie. nothing proprietary). To that extent they did a good job8230 Yes thanks that8217s the one. Whilst they are open about limitations, I get the feeling that they just want to continue building models. That8217s just what they do. The comment about how they already know with certainty that CO2 causes warming, and is as certain as knowing that a cup falling to the floor will shatter, therefore we must 8220leap8221 out of the way, we must act, regardless of what else models may tell us, is an interesting take on things. It suggests that models are just research curiosities. The ones that output significant warming are of course newsworthy, like any techy gadget can be newsworthy, but they are not the original proof or basis for global warming. That, as they say, was already known with certainty. Like a shell game, in global warmingclimate change we8217re still left wondering where the real ball is. I8217ve just been looking at some of the GISS Code and it is schoolboy stuff from a software point of view. I did a quick Lines of code count and it appears that GISS believe that the earth8217s climate can be accurately simulated with only 100,000 lines of badly written Fortran. When you consider that windows Vista has 50 Million lines of code it makes you wonder how something that is orders of magnitude more complicated than the climate, could ever be expected to boot up, let alone do anything else. I don8217t think it would matter much in the end if the climate models were completely rewritten from scratch in the best and most modern code available. The end results would still be the same, i. e. the global temperature, CO2, sea level, glaciers, Arctic ice, Antarctic ice etc. would still be rising, rising, rising, melting, melting, melting respectively at even faster rates than they had previously thought (modelled). So if it ain8217t broke8230 Everything8217s hunky dory. What temperature do you want What sea level rise do you want Etc, etc8230 You should see some of the awful FORTRAN code still used and maintained to do attitude determination, orbital mechanics, guide star occultation, etc. for spacecraft. Complaining that past coding doesn8217t meet current standards is just plain silly. As long as it 8216works8217 for the primary user, redoing it is just bad engineering (if ain8217t broke and all that). Any disagreement with the definition of 8220works8217 has little to do with the 8216quality8217 of coding. Gary was trying to defend what he does for a living. Why, I8217m not sure. He calls himself a 8216software engineer8217 but is not necessarily any more an 8216engineer8217 than a 8216building maintenance engineer8217. His 8216admission8217 is at about the same level as that of a building maintenance engineer8217s admission to the sad state of architectural design. Ho hum. Should the climate models be used for trillion dollar decisions Of course not But for far better reasons than crappy, hard to follow code. Let8217s focus on the real issues instead of peripheral ad homs like 8216crappy code8217. Move along people. There8217s nothing to see here. The trouble with models is that they are pseudo-quantitative. Numbers are based on qualitative judgements. Would be better if they used a true qualitative approach such as hazard and operability hazop studies where experts and interested parties talked through the issues in a semi structured way. Not dissimilar to a blog really. How would one know the difference between true model predictions, and artifacts because of bad coding Somewhere in the code I saw that it assumes 360 days in a year, or 12 equal months of 30 days. Not a bad assumption if you are forecasting over a short range of time. But when you are trying to predict global temperatures 100 years into the future 8211 that is a very different story. You need multiple independently coded models to alleviate the problem of coding errors. However programs like modelE are implementations of some deep domain knowledge, and the trickiest thing is the application of that domain knowledge rather than the coding itself. Ie problems are more likely to arise because of a physics error than a coding error. I have been programming all my life, C, C, COBOL too, so this FORTRAN stuff doesn8217t look too alien to me. However I can8217t make head or tail of the modelE code, not because I can8217t follow the flow of the code, but because I don8217t understand the domain knowledge (climate physics) behind it. I8217d thrown together a post a while back on poking a little fun at some of the base assumptions behind catastrophic AGW, and I had a couple paragraphs dedicated to why the models are pretty useless. Of course, I was just looking at the design side, not even getting into the issues of poor coding. Here8217s the relevant portion: 8230the sheer magnitude and complexity of the system still defies attempts to fully understand all of the interactions, leading to small errors having an ever-growing cascade effect as one tries to predict further into the future. Put more simply, imagine working on a very complex algebra problem. The issue is that you copied one little part of the problem wrong. In your first pass, simplifying, substituting, and performing other operations, that wrong bit interacts with another element of the problem, the result of which is corrupt. Each subsequent pass through the problem causes the erroneous segment to corrupt more of the total problem as it is combined with other elements, and, by the end, your final answer is utterly wrong. This is very much what inhibits long-term forecasting on even a local scale and short time spans. Taking this up to the global scale allows vastly more chances for error, and projection years into the future gives any errors much more time to cascade to the point of rendering the entire model useless. The calculations may be perfect, but a faulty starting point ruins the entire process. Unfortunately, this isnt the greatest difficulty. Back to the hypothetical problem, imagine that you dont even get copies of any of the formulae you need, nor even the base problem. Instead, all you have are the base values to use and thousands, millions of answers, each coming from different base values (you dont get told what any of them are), from which to figure out the starting equation. It gets worse. Some of those answers are wrong, and you dont know which ones. It gets worse still. The answers are divided up into hundreds of groups, each group containing answers to certain combinations of formulae and base values, and you arent told what formulae or values are used or how they are combined. Nope, not done getting worse, yet. In fact, you are told that none of the groups contain answers to the actual problem you need to solve. Instead, example answers for the overall problem are supposed to be composites, somewhat like the mean, of all of one answer (the tenth, for example) from each group, but you also have to figure out how those subordinate answers get combined into the big one. In the end, you have mountains of data, an unknown amount of which is faulty, from which to determine all of the formulae, how the formulae are used to produce the subordinate answers, and how those are combined to get the main answer before you can even start working on the problem with the given starting values. Guess what This isnt even accounting for time lapse yet. Someone may read that last paragraph and think, Models on the global scale dont have to be that precise, though they can be more general and still get the broad picture. Well, lets run with the picture metaphor, shall we I would roughly equate simplifying components of a model to reducing the number of pixels in an image. Sure, you can do it, but you loose definition. Do it with a complex, intricate picture, and you will very quickly end up with an image people misinterpret, or one from which it is impossible to discern anything at all. Sure, you can dumb down the models by making them less complex with estimations of values instead of solid formulae, but you have to admit that doing so destroys the accuracy of that broad picture. A more direct example comes from graphing a curve to fit plotted points. Reducing complexity could be seen as using fewer data points from which to extrapolate a curve. The problem with this is that, as the data points are made fewer (thereby spreading out on the graph), you may end up missing movement in the actual curve occurring between points and graphing a curve that is completely wrong. When it comes to scientific (quasi-scientific in this case, really, but thats a topic for another day) analysis of data, generalization is bad, and detail is good. That leads me to a more fundamental question. Are there any logical checks on climate modeling Drawing on my experience as a chemical engineer, because the chemical systems I modeled were non-nuclear, I was bound by the laws of conservation of mass and energy. The models always checked to see it the number of pounds, kilograms, or tons of products equalled the same measure of reactants. If the mass balance did not close, the program printed a big warning. Do climate models bother to calculate an energy balance It would seem to me that if you got a bogus answer of 1 x 1020 temperature in March 2016, then the answer is 8220No8221. If they don8217t anergy balance, then how can you have ANY confidence in the results It appears I have hit a sore spot re: 8220software engineers.8221 First of all, I don8217t mean to demean the value of the work that they do. They fulfill a very necessary niche in the business world. But at the same time, unless they are engineers in the traditional sense, they must take direction from engineers or scientists to build the models. There are a lot of chemical engineers who develop software for our business (for those in my business, think ASPEN, Simsci, or other chemical engineering software modelling companies). And we would be a hell of a lot less productive without them. I shudder to think of designing a multi-component distillation column by the trial-and-error tray-by-tray method. I remember seeing a thick binder of calculations done by hand. That said, it is still the physical science that is the underlying basis for the models, not the code. So, Squidly, I salute you, and all of your brethern Go forth, and prosper George Tobin (09:01:16). I was unaware that any blame had been directed at GISS software engineers. My understanding was that they were faithfully implementing the bogus sensitivity assumptions and all the rest of that which comprises current climate modeling ideology. George, you are laboring under the assumptions that the code was written by a software engineer and that there was a division between the designer and the coder. The code looks to me like it is largely written by folks who learned programming as a sideline or had a class in it not by professional programmers. (Yes, anyone can learn to program just like anyone can learn to write poetry that does not make you a professional programmer nor a good poet) Ive read GIStemp front to rear. It looks like it was written by folks who had a FORTRAN class once, years ago (I would guess some of it was written by Hansen himself decades ago) and do not make production product for a living. It also has layers that look like kludge added on top of kludge over time. Some blocks are ALL CAPS and look like F77 style (and syntax). Other newer chunks are mixed case and F90 style. In short, it just growed is how it looks. There are exceptions. OK. No disagreements with the internals of the code. I will grant your (stated) expertise in the various languages, and the ability of a (good) programmer to write (good) code in virutally language. No problems. But 8230 What about the need for configuration control Is there ANY change control, change testing, testing 8220debug8221 notes or corrections Is there any 8220lost8221 code that couldwouldmight produce arbitray trash if a single thing goes wrong For example, if we put a real value of CO2 and a real value of temperature Does it produce a valid 8220radiation in8221 as a check Who made the changes Does it process 8220real data8221 if the year or earlier CO2 results and temperatures change (In other words, if you put in values for 400 ppm CO2 in 1980, does it produce a valid temperaure as it would if the year were 2050 and the CO2 were 400 If CO2 were changed to 200, does it produce real world temperatures for say the year 1800 ) Who tested each module, if the whole thing has not been tested how do we know the actual calculations in the repeating module are correct Who verified its input, and what are its input variables, and what are the 8220coded in8221 variables When a change or update was made, who made the change Who authorized the change Who tested the result after the change What was the previous coding, and what was the changed coding Has it been8221 hacked8221 or do the results have any chance of being 8220hacked8221 Were results as printed actually teh results from a test run, or were they merely typed in afterwards If this ran an ATM machine, would you sell it to your bank Would your congressman put his money into this program if it were a ttax processing software Ted Clayton (00:24:40). Ah ha. Very thoughtful comments Nice I completely agree with you concerning language construct and organization of FORTRAN and what that brings to numerical formula processing. Your comments are certainly very valid. I would content however, and especially when considering the enormous budgets employed, one could utilize a more modernized language (preferably a fully compiled language that produces binary code for performance optimization, ie: this would exclude Java) and provide even more robust scripting mechanisms that would allow the use of heavy mathematics in robust expressions that could then in turn be pre-compiled into the foundation language, optimized and compiled to binary codes native to the host machine. Such an approach as this will allow for the proper architectural abstractions, allow the software engineers to employ flexible and robust design concepts and patterns, allow software developers to write compartmental coding segments abstracted from adjacent logical modules, and probably most importantly, allow the 8220scientists8221 to develop robust mathematical representations of physical processes and complex interactions utilizing language, verbiage and structure that they are used to. In this scenario, everybody wins, and result could be something that may actually stand a snowballs chance in hell of working. And even if it doesn8217t work, you have developed something that can adapt as your learning and understanding culminates and expands. R S Bridges (19:48:32) : 8230 So, Squidly, I salute you, and all of your brethern Go forth, and prosper In large part I am in agreement with what you are saying. Conversely the same could be said software engineer to scientist. This, after all, is a cooperative effort. There should be no dictation flowing either direction. I find there is a clear and present contrast between a 8220programmer8221 and a 8220software engineer8221, that is the crux of what I have been discussing. To some who have said 8220a software engineer is not an engineer8221 or that 8220there is no such thing as a software engineer8221, they are quite naive to the development of software in general. Ultimately, the process of software development is simply the translation of human process to machine process. Of this, there are many facets involved, from the engineering aspects, to the coding aspects, and many branches in between. The trick to developing successful software is proper organization and translation, this is usually not simply a task for a 8220coder8221, as 8220coders8221 don8217t usually posses the skill set necessary to adequately architect the application structure itself with all components considered. 8220That said, it is still the physical science that is the underlying basis for the models, not the code.8221 I disagree with this. Again, it is a cooperative effort. One relies on the success of the other. All the physical science in the world is simply garbage if not properly constructed and coded. Conversely, the best software design and coding is worthless without proper physical science instruction. So, again, to be successful, one cannot live without the other. They need to be harmonious. These are not easy or trivial tasks, but properly set forth can be accomplished.

Comments

Popular Posts